我想运行以下操作系统命令作为子进程,以便知道其pid,因为我希望能够执行
proc.terminate()
下面是工作的os.system()
命令。请注意,bellow命令已经打开了一个子shell,因为setview
就是这样做的,然后在该子shell中执行一个python脚本,然后退出该子shell。在
我试过了
import subprocess
cmd = "/usr/atria/bin/cleartool setview -exec '/usr/bin/python /home/testUser/Development/Scripts/setDoneFlag_Count_Lines.py' testUser__project_5_0_myProject_001"
p=subprocess.Popen(cmd.split(), shell=True)
取自此stackoverflow线程:How to determine pid of process started via os.system
但它只执行第一个/usr/atria/bin/cleartool
,而不执行其他命令。任何人都知道如何编写一个与我的操作系统打电话?在
提前谢谢。在
你为什么要分开指挥?不要使用命令拆分(). 试试这个:
.split
在这里没有帮你什么忙,因为引号中有空格,你不想拆分。或者直接传递一个字符串,然后让shell处理参数分隔:或手动分离命令:
^{pr2}$相关问题 更多 >
编程相关推荐