在Python中,可以使用subprocess
模块来执行外部命令并对其进行进程管理
subprocess.run()
执行外部命令并等待其完成:import subprocess
# 执行外部命令
result = subprocess.run(['ls', '-l'], capture_output=True, text=True)
# 等待命令完成并获取返回码
return_code = result.returncode
# 获取命令输出
output = result.stdout
print(f"Return code: {return_code}")
print(f"Output: {output}")
subprocess.Popen()
创建一个子进程并与其进行交互:import subprocess
# 创建一个子进程
process = subprocess.Popen(['ls', '-l'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)
# 获取子进程的输出
output, error = process.communicate()
# 等待子进程完成
return_code = process.wait()
print(f"Return code: {return_code}")
print(f"Output: {output}")
print(f"Error: {error}")
subprocess.Popen()
创建一个子进程并在后台运行:import subprocess
# 创建一个子进程并在后台运行
process = subprocess.Popen(['ls', '-l'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)
# 获取子进程的输出
output, error = process.communicate()
# 等待子进程完成
return_code = process.wait()
print(f"Return code: {return_code}")
print(f"Output: {output}")
print(f"Error: {error}")
在这些示例中,我们使用了subprocess.run()
来执行外部命令并等待其完成。我们还使用了subprocess.Popen()
来创建子进程并与其进行交互,以及在后台运行子进程。这些方法可以帮助你更好地管理外部命令的进程。