我正在写一个小脚本。该脚本应打开 3 个终端并独立与这些终端交互。
我很清楚子流程是做到这一点的最佳方法。到目前为止我所做的:
# /usr/bin/env python
import subprocess
term1 = subprocess.Popen(["open", "-a", "Terminal"], stdin=subprocess.PIPE, stdout=subprocess.PIPE)
term1.communicate(input="pwd")
我的问题是我无法与新终端交互。这部分term1.communicate(input="pwd")
不管用。我无法向新终端发送命令。我也尝试过term1.communicate(input="pwd\n")
但什么也没发生
你有什么想法我该怎么做吗?
附:我使用的是 Mac 操作系统。
您可以同时运行这两个命令,而无需打开终端。
import subprocess
process1 = subprocess.Popen(["ls", "-l"])
process2 = subprocess.Popen(["ls", "-l"])
如果运行该代码,您将看到该目录被列出两次,交错在一起。您可以根据您的特定需求对此进行扩展:
tcprelay1 = subprocess.Popen(["tcprelay", "telnet"])
tcprelay2 = subprocess.Popen(["tcprelay", "--portoffset [arg1] [arg2]")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)