2013-04-28 60 views
1

我想使用fabric来调用“run()”或“sudo()”以在远程主机上执行脚本。 不过,我想从蟒蛇内做到这一点,而不是通过命令行:使用fabric从python内执行远程服务器上的代码

所以不是:

fab.py: 
def do_something(): 
    print "doing something" 
    sudo("my_shell_commandline_to_do_something") 

然后:

fab do_something 

我想只是调用do_something来自其他一些python程序。 我该怎么做?我如何提供远程主机的IP地址,因为tehre没有fabricrc文件从蟒蛇内

回答

2

没关系, 我发现我自己:)

它的(或有):

from fabric.operations import sudo 
from fabric.context_managers import settings 

with (settings(host_string=remote_ip_address, 
user='myuser', 
key_filename='/tmp/.ssh/myKey.pem')): 
    sudo('touch a.txt') 
相关问题