我正在使用命令nc.traditional -l -e server.py -p 4567
问题是当我连接到它(telnet 127.0.0.1 4567
)时,脚本会启动但屏幕上没有任何内容。
我在解释器读取的脚本开头有print
条指令(我测试过它是通过文件操作启动的)但我的telnet终端上没有写任何内容。
而且,它仍然停留在raw_input
指令上。我可以在telnet终端上写,但似乎没有任何东西被发送到python脚本。
我尝试使用bash脚本替换python,这样可行,它会在屏幕上打印内容并读取输入。 我还试过通过ftp而不是telnet进行连接而没有结果。
答案 0 :(得分:0)
所以,我终于找到了解决方案
在shebang中,将解释器中的选项-u添加到unbuffer stdin stdout和stderr
Shebang线:
#!usr/bin/python -u