os.system 在终端中没有输出。

14 浏览
0 Comments

os.system 在终端中没有输出。

这个问题已经有答案了

Python:运行os.system后如何获取stdout?[重复]

我有一个简单的测试文件,我创建它是为了使用 vmd (一份我工作中用的程序)。

这个测试文件非常简单,就是:

import os
os.system("vmd -eofexit < VMD_script.tcl -args 3spi_cholesterol")

基本上,我使用 os.system 启动一个名为 vmd 的程序,同时使用我写的另一个脚本并给它一个参数。我发现情况是当我运行这个测试脚本时,什么都没有发生,但如果我在终端中直接输入:

vmd -eofexit < VMD_script.tcl -args 3spi_cholesterol

一切都完美地工作。我使用这行代码已经有一段时间了,但在 Linux 上它可以完美地工作,难道这是一个 Mac 的问题吗?

非常感谢。

admin 更改状态以发布 2023年5月20日
0
0 Comments
import subprocess
ls_output = subprocess.check_output(['vmd', '-eofexit', '<', 'VMD_script.tcl', '-args', '3spi_cholesterol'])

(无需翻译,为一个HTML段落标签,内部包含一个HTML加粗标签)

0