#! /home/admin/python-2.7/bin/python2.7
from fabric.api import *
from fabric.context_managers import *
env.user = '×××××'
env.password = '××××'
env.hosts=["×××××", "×××××"]
def task1():
#open_shell("LANG=en_US.UTF-8 && df -h && exit")
#run("ps ajx | grep bash")
#open_shell("ps ajx | grep bash && exit")
#run("pwd && cd /usr/local && pwd")
#run("echo $PATH")
#run("whoami")
#run("who")
#run("ps ajx | grep pts")
#open_shell("ps ajx | grep pts && exit")
#local("pwd")
我们从上面几个命令的话执行可以看出,fabric还是遵守在《unix环境高级编程》中所描述的关于(1)进程(进程的派生),(2)远程连接(远程连接的一系列步骤)的原理的。
第一次使用run或者open_shell最大的一个不同点是,bash所跟参数不同而导致有些差异的行为,比如说配置文件的读取等,从进程派生的角度来说都是:先bash,然后fork+exec所要执行的命令