我使用python脚本接收输入并在linux上运行命令。在一个线程中接收一个命令,它会切碎一个逻辑卷。但有时需要很长时间才能完成粉碎磁盘逻辑卷。
subproc.Popen('shred /dev/group/m1')
python中的线程一次运行一个。因此,脚本挂起,而不是在运行子进程时接受其他输入。有没有办法解决这个问题,以便在线程等待来自stdout的数据时可以同时处理其他输入?
答案 0 :(得分:0)
抱歉,我在Windows上使用它:
os.system("start /min cmd /c C:\Python27\python.exe sino1.py")
请参阅:
Python执行Unix / Linux命令示例 http://www.cyberciti.biz/faq/python-execute-unix-linux-command-examples/
答案 1 :(得分:0)
Popen('shred /dev/group/m1')
失败,除非您忘记显示shell=True
参数Popen()
不阻止,无论子进程可能需要多长时间也就是说,如果您正确使用subprocess
模块,那么您的脚本不应该挂起。