我正在使用subprocess.call使用默认应用程序打开pdf文件,如下所示:
subprocess.call(["xdg-open", pdf], stderr=STDOUT)
但是,运行该命令时,该进程已连接到终端,我想将其分离。基本上,我想运行该终端,然后将其用于其他用途。
我该怎么做?
答案 0 :(得分:1)
您可以为此使用Popen
。
from subprocess import Popen, PIPE, STDOUT
p = Popen(["xdg-open", pdf], stderr=STDOUT, stdout=PIPE)
# do your own thing while xdg-open runs as a child process
output, _ = p.communicate()