如何使用Python脚本中的子进程将文本写入文件?

时间:2016-02-23 15:55:56

标签: python python-2.7 subprocess

我想在主脚本中使用子进程运行脚本,该脚本会给出几行文本作为结果,然后将结果复制到文本文件中。我使用的是Python 2.7。

我想要运行辅助脚本的文件夹与主脚本所在的文件夹不同,因此我按照this answer说明了如何执行此操作。

我的代码如下所示:

import subprocess

if __name__=="__main__":
    subprocess.check_call(['top > test.txt'], cwd=newdirectory)

在这种情况下,我只是使用top作为我想要做的事情的一个例子。如果我在终端中写top > test.txt,我会得到一个名为test.txt的文本文件,在执行命令时输出为top。

但如果我运行上面发布的代码,我会收到错误。我也尝试过使用类似的东西:

import subprocess

if __name__=="__main__":
    subprocess.check_call(['top', '> test.txt'], cwd=newdirectory)

但这并没有给出任何东西(这是有道理的,因为>test.txt不是top命令的参数。

如何将脚本的输出(或本例中为top)写入新目录中的test.txt文件?

0 个答案:

没有答案