gpt4 book ai didi

python - 如何在新终端的 python 中运行 linux 终端命令

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:04:31 24 4
gpt4 key购买 nike

我阅读了多个关于如何使用 python 中的子进程模块运行 linux shell 命令的答案。在我的例子中,我需要在我的 python 代码中运行 linux shell 命令,这样这些命令应该在新终端中执行。

subprocess.call(["df","-h"] 

我在基本终端中运行 xyz.py,当我执行上述命令时,它会覆盖同一终端中 xyz.py 的输出。我希望此命令在不同的终端中执行,或者我想将此命令的输出存储在文本文件中。

subprocess.call(["df","-h",">","somefile.txt"])

以上命令无效。

编辑-1:如果我将输出保存在文本文件中,我还必须通过 python 显示它。

谢谢!

最佳答案

import subprocess
fp = open("somefile.txt", "w")
subprocess.run(["df", "-h"], stdout=fp)
fp.close

使用文件句柄。

如果要在保存时打印输出:

import subprocess
cp = subprocess.run(["df", "-h"], stdout=subprocess.PIPE)
print(cp.stdout)
fp = open("somefile.txt", "w")
print(cp.stdout, file=fp)
fp.close()

关于python - 如何在新终端的 python 中运行 linux 终端命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49812650/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com