我在用子流程.Popen调用控制台应用程序。控制台应用程序本身调用另一个子进程来执行下载操作。父进程一旦调用子进程就退出。在
我能够在命令提示符下手动运行脚本时获得子进程的输出。在
但是子流程.Popen在系统环境中运行脚本时被挂起(post commit hook)。子进程无法退出。在
p1 = subprocess.Popen([Application,arg1, arg2, arg3], shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()
Down_out = p1[0]
Down_Err = p1[1]
提前谢谢
从您提供的信息中很难说,但可能是
arguments
是一个包含多个参数的字符串,而这些参数应该拆分为列表中的多个元素。如果将所有参数合并为一个字符串,则正在执行的程序的行为将与预期的不同。例如:
在第一个字符串中,
'/tmp/testing /tmp/foo'
是一个字符串。第二个元素是列表中的两个独立元素。一切如期而至。
我猜你的死是因为无效的论点。
相关问题 更多 >
编程相关推荐