2

1)编写运行系统命令的python程序(即“dir”) 2)将系统命令的输出保存到变量中 3)打印变量

这是在 Python 中完成的,我想不通,我发现一个使用子进程只返回“0”的。

我正在使用 Wndows 7 Python 2.5 和 2.7

基本上,我想要类似 cmd -> dir C:\

然后使用 Python 将该输出保存到文件中。

帮助会很好,

4

2 回答 2

2

您可以使用subprocess.check_output

从文档:

subprocess.check_output(args, stdin=None, stderr=None, shell=False, universal_newlines=False)

使用参数运行命令并将其输出作为字节字符串返回。

例子:

>>> subprocess.check_output(["echo", "Hello World!"])
'Hello World!\n'
于 2012-12-12T20:35:49.897 回答
0

这是我在其他地方找到的一门课程,似乎可以完成您正在寻找的东西

class Command(object):
    """Run a command and capture it's output string, error string and exit status"""
    def __init__(self, command):
        self.command = command
    def run(self, shell=True):
        import subprocess as sp
        process = sp.Popen(self.command, shell = shell, stdout = sp.PIPE, stderr = sp.PIPE)
        self.pid = process.pid
        self.output, self.error = process.communicate()
        self.failed = process.returncode
        return self
    @property
    def returncode(self):
        return self.failed

要运行它,只需执行以下操作:

commandVar = Command("dir").run()

然后查看结果:

commandVar.output
于 2012-12-12T20:44:04.363 回答