python - 如何分离由 subprocess.call 运行的程序?
问题描述
我正在使用 subprocess.call 使用我的默认应用程序打开一个 pdf 文件,如下所示:
subprocess.call(["xdg-open", pdf], stderr=STDOUT)
但是,当运行它时,该进程附加到终端,我想将其分离。基本上,我想运行它,然后能够将终端用于其他东西。
我该怎么做呢?
解决方案
你可以用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()
推荐阅读
- javascript - 我对如何仅使用 javaScript 编写 switch case 而不是 if 条件感到困惑
- css - 通过伪元素在css文件中使用图标
- git - Git看到由于不同的变音符号编码而我无法访问的文件的文件更改?
- python-3.x - service.files().update() 每次在 python Google drive API 中返回 http 500 错误
- ruby - Ruby OOP - 实例方法
- java - 如何将数据从 Java 发送到 SQLite DB?
- c++ - 如何解决“C2660 'SWidget::Construct':函数不接受 1 个参数”?
- javascript - 对话窗口的优先级高于 DOM 元素
- javascript - 如何在 Cypress 中的特定行上查找元素
- ios - 如何删除 CABasicAnimation 然后在 Swift 中重新启动它?