我可以使用 ssh 在远程机器上运行 shell 脚本。例如:
ssh -l foo 192.168.0.1 "`cat my_script.sh`"
现在我想在不发送 .py 文件的情况下运行 python 脚本。有什么办法吗?
这会将您计算机上的 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"
确保命令行参数位于您发送到远程主机的命令的双引号内。