如何通过Python向运行中的screen发送命令(Ubuntu 12.04)
我现在在使用Ubuntu 12.04 LTS系统,运行的是Python 2.7。我的Python代码大概是这样的:
from os import system
system("screen -S session -X stuff 'commandhere'`echo -ne '\015'`")
但是当我尝试运行这段代码时,它没有任何反应。我在想,这个问题能不能解决,如果能的话,应该怎么做呢?
我想要向一个正在运行的屏幕“会话”发送一个命令,其中“commandhere”就是我想发送的命令。
1 个回答
3
你试过像这样使用 subprocess.call()
吗:
#!/usr/bin/python
import subprocess
subprocess.call(["screen", "-S", "session", "-X", "stuff", "'command here'`echo -ne '\015'`"])
还有一个想法:最好是创建一个 bash
脚本来处理会话的相关操作,然后让 Python 去调用这个 bash
脚本。