如何在python中从另一个shell执行命令?

时间:2017-07-19 11:41:22

标签: python linux shell

我想运行一些打开另一个shell的命令,我可以在其中键入特定的命令。在那个shell中,我想在循环中运行另一个命令。 更具体一点 - 在我的例子中它看起来像这样:

> openssl s_client -connect 10.10.10.10:10000 ### this is the first command
CONNECTED(00000003) ### some output
(...)
### now i'd like to type 'R' in a loop (R means renegotiate)

最好的方法是什么?在此先感谢您的任何帮助

1 个答案:

答案 0 :(得分:0)

使用子进程,就像这样。

import subprocess

cmd = 'ls -la' 
subprocess.call(cmd.split(), shell=False)

所以在你的情况下,它会是这样的:

import subprocess

connect = 'openssl s_client -connect 10.10.10.10:10000' 
subprocess.call(connect.split(), shell=False)

while (something):
    subprocess.call('R', shell=False)