繁体   English   中英

如何从远程服务器上的本地计算机运行python脚本并实时显示输出?

[英]How to run a python script from local machine on a remote server and display the outputs live?

我发现的唯一解决方案是:

cat MyScript.py | ssh username@ip_addr python -

问题是它不会实时显示该脚本的输出,它会等到程序完成后再显示输出

我在此脚本中使用了scapy并用它嗅探数据包,并且我必须在该远程服务器上运行它(不,我无法在其中复制或写入该文件)

那么解决方案是什么? 如何在命令行中实时查看脚本的输出?

我正在使用Windows 10。

重要说明:我也认为ssh正在使用某种缓冲,并在打印的内容超过缓冲量之后发送输出,因为当输出很大时,它的确会部分显示出来,我希望得到该输出可以尽快进入我的计算机,而不是在到达缓冲区或其他东西之后

您应该首先使用以下命令将文件发送到远程计算机

scp MyScript.py username@ip_addre:/path/to/script

然后使用SSH到您的远程计算机

ssh username@ip_addr

最后,您正常运行脚本

python path/to/MyScript.py

编辑

要直接执行脚本而不将其复制到远程计算机,请使用以下命令:

ssh user@ip_addr 'python -s' < script.py

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM