使用Python的run()函数执行并监控子进程
发布时间:2024-01-13 04:27:12
在Python中,可以使用subprocess模块中的run()函数来执行和监控子进程。run()函数可以运行一条命令,并等待该命令完成后返回结果。以下是使用run()函数的示例:
import subprocess
# 示例1: 执行简单命令
result = subprocess.run(["ls", "-l"], capture_output=True, text=True)
# 输出命令结果
print(result.stdout)
# 示例2: 执行命令并检查返回码
result = subprocess.run(["git", "clone", "https://github.com/example/repo.git"])
# 检查返回码
if result.returncode == 0:
print("命令执行成功")
else:
print("命令执行失败")
# 示例3: 执行命令并传递输入
result = subprocess.run(["grep", "Pattern"], input="Some text
Pattern match
", capture_output=True, text=True)
# 输出命令结果
print(result.stdout)
在示例1中,我们使用run()函数执行了一个简单的命令ls -l(列出当前目录下的文件和文件夹)。通过将capture_output参数设为True,我们可以在result.stdout中获取命令的输出。
在示例2中,我们使用run()函数执行了一个git clone命令,如果该命令成功执行,返回码将为0,否则为非0值。
在示例3中,我们使用run()函数执行了一个grep命令,并通过input参数传递了输入文本。同样地,我们可以在result.stdout中获取命令的输出。
除了上述示例,run()函数还有其他参数可以用于设置执行行为,例如cwd参数可以指定命令的工作目录,timeout参数可以设置命令的超时时间等等。详细的参数说明和用法可以参考Python官方文档。
