启动Linux终端并使用Python控制

时间:2019-05-04 22:32:49

标签: python linux terminal subprocess

对于我正在从事的项目,我想将一系列命令自动化到一个单独的终端窗口,以便我可以控制使用该终端的其他程序,或者仅运行常规Linux命令。

到目前为止,我已经尝试使用子过程来使用打开一个新的终端窗口

proc = subprocess.Popen('gnome-terminal')

我还能够打开程序,例如nano。

proc = subprocess.Popen(['gnome-terminal', '--command=nano'])

但是我不能再向终端发送更多命令,这意味着我可以以用户身份对其进行控制,但是我无法自动化它对python的作用。我尝试使用子进程和管道发送更多命令,但这没有用。我也研究了os.system(),但似乎找不到解决方法。

举个简单的例子

1)Python打开一个新终端

2)发送“回声这是一个测试”

3)发送“ ping -c 10 192.168.x.x >> pingout.txt”

4)在终端“ nano pingout.txt”中

5)写下“这是一个测试”

6)然后按“ ^ X”,“ y”并返回以保存编辑的文件

然后python程序将继续运行。

0 个答案:

没有答案