使用Python编写脚本并利用cmd.stdout()输出结果
发布时间:2023-12-12 14:37:31
以下是一个使用Python编写的脚本,可以通过cmd.stdout输出结果:
import subprocess
def run_command(command):
try:
# 运行命令并获取输出
process = subprocess.Popen(command, stdout=subprocess.PIPE, shell=True)
output, error = process.communicate()
# 输出结果
if output:
print(output.decode())
if error:
print(error.decode())
except Exception as e:
print("An error occurred: ", str(e))
# 示例用法:运行命令"ls"并输出结果
run_command("ls")
# 示例用法:运行命令"dir"并输出结果
run_command("dir")
# 示例用法:运行命令"echo 'Hello, World!'"并输出结果
run_command("echo 'Hello, World!'")
这个脚本使用subprocess.Popen方法来运行指定命令并获取输出。stdout=subprocess.PIPE参数告诉进程将输出发送到管道中,shell=True参数用于在Shell中运行命令。
然后,我们可以使用communicate方法从管道中获取输出和错误。如果输出存在,我们将通过output.decode()将其解码为字符串并打印出来。如果有错误,我们也将通过error.decode()将其解码为字符串并打印出来。
在使用时,我们可以调用run_command函数并将要执行的命令作为参数传递给它。脚本中提供了几个示例:运行ls命令(在Linux系统上列出目录内容),运行dir命令(在Windows系统上列出目录内容)以及运行echo 'Hello, World!'命令(打印出"Hello, World!")。
通过这个脚本,我们可以执行系统命令并通过cmd.stdout()输出结果。请注意,在执行系统命令时要小心,确保只运行受信任的命令和输入,以防止潜在的安全风险。
