Python执行CMD命令并保存结果

在编程过程中,我们经常需要执行一些系统命令来获取信息或执行特定的操作。Python提供了多种方法来执行系统命令,并将结果保存下来。本文将介绍如何使用Python执行CMD命令并保存结果。

使用subprocess模块

Python的subprocess模块提供了一种强大的方法来执行外部命令。我们可以使用subprocess.run()函数来执行CMD命令。

import subprocess

# 执行CMD命令
result = subprocess.run('dir', capture_output=True, text=True, shell=True)

# 打印结果
print(result.stdout)

上述代码中,我们使用subprocess.run()函数执行了'dir'命令。capture_output=True表示捕获命令的输出,text=True表示将输出转换为文本格式,shell=True表示在shell环境中执行命令。

使用os模块

除了subprocess模块,我们还可以使用os模块来执行CMD命令。

import os

# 执行CMD命令
result = os.popen('dir')

# 读取结果
output = result.read()

# 打印结果
print(output)

上述代码中,我们使用os.popen()函数执行了'dir'命令。然后使用read()方法读取命令的输出。

状态图

下面是一个简单的状态图,描述了执行CMD命令并保存结果的过程。

stateDiagram-v2
    [*] --> Start: 开始
    Start --> Execute: 执行CMD命令
    Execute --> Capture: 捕获命令输出
    Capture --> Save: 保存结果
    Save --> [*]: 结束

类图

下面是一个类图,描述了执行CMD命令并保存结果的类结构。

classDiagram
    class CommandExecutor {
        +execute_command(command: str): str
        +save_result(result: str): None
    }
    
    class SubprocessExecutor {
        +run_command(command: str): str
    }
    
    class OsExecutor {
        +execute_command(command: str): str
    }
    
    CommandExecutor : -executor: Executor
    CommandExecutor <-- SubprocessExecutor: 使用
    CommandExecutor <-- OsExecutor: 使用

结语

通过使用Python的subprocess模块或os模块,我们可以方便地执行CMD命令并保存结果。本文提供了两种方法的示例代码,并使用状态图和类图对执行过程和类结构进行了描述。希望本文能帮助你更好地理解如何使用Python执行CMD命令并保存结果。