fabric 运行 可以是远程机器上的本地脚本吗?

Can fabric run a local script on a remote machine?

我的本地机器上有 myfile.py

我想做这样的事情:

from fabric.api import env, run

env.host_string = 'whatever.com'

def run_script():
    run('python myfile.py')

当然,这个 returns can't open file 'myfile.py': [Errno 2] No such file or directory 我如何远程 运行 这个文件?我必须 putwhatever.com 吗?

您可以先使用 fabric.operations.putmyfile.py 推送到远程计算机,然后像您尝试的那样 运行 脚本。

但请确保脚本的路径是绝对路径或相对于执行远程命令的当前目录的路径,这可以使用 cwd you can also manually cd into the remote folder using fabric.context_managers.cd

找到