说我是否想运行vim ./foo.txt我希望能够使用我的tcp套接字客户端编辑foo.txt。
但每当我尝试这样做时,它会在服务器上执行,但不会在我的客户端上执行。
我不想使用paramiko或任何其他类似ssh的模块,我想继续使用python套接字模块。
我正在使用python 3。
答案 0 :(得分:0)
我建议使用子进程模块在服务器(文件所在的位置)上打开命令。这种方式可以将信息放入其中。您可以让客户端发送一条消息,告诉服务器将x发送到子进程。
一个例子是这样的:
import subprocess
# Assuming the variable x is that the socket is sending the server...
editing_foo = subprocess.Popen(['vim', './foo.txt'], stdin=PIPE) # stdin must be PIPE to communicate
editing_foo.communicate(input=x) # input is a string which is sent to the subprocess
# x could have been 'i' or ':q!' for example