10

我可以使用 ssh 在远程机器上运行 shell 脚本。例如:

ssh -l foo 192.168.0.1 "`cat my_script.sh`"

现在我想在不发送 .py 文件的情况下运行 python 脚本。有什么办法吗?

4

1 回答 1

10

这会将您计算机上的 my_script.py 的内容放入一个 echo 命令中,该命令在远程计算机上执行并传递给 python。

ssh -l foo 192.168.0.1 "echo '`cat my_script.py`' | python"

如果你想添加命令行参数,它应该像将它们放在 python 命令之后一样简单,如下所示:

ssh -l foo 192.168.0.1 "echo '`cat my_script.py`' | python -testSwitch -arg 0"

确保命令行参数位于您发送到远程主机的命令的双引号内。

于 2012-10-01T11:17:35.150 回答