共计 1071 个字符,预计需要花费 3 分钟才能阅读完成。
在 Python 中,使用 subprocess
模块可以调用系统命令并与其交互。下面是一些常见的使用方法:
- 执行命令并获取输出:
import subprocess
output = subprocess.check_output(['ls', '-l'])
print(output.decode())
上述代码执行 ls -l
命令,并将输出结果以字节形式保存在 output
变量中。使用 decode()
方法将字节转换为字符串并打印输出。
- 执行命令并获取返回值:
import subprocess
return_code = subprocess.call(['ls', '-l'])
print(return_code)
上述代码执行 ls -l
命令,并将返回值保存在 return_code
变量中。返回值为 0 表示命令成功执行,非 0 表示执行失败。
- 执行命令并捕获错误:
import subprocess
try:
output = subprocess.check_output(['command'])
except subprocess.CalledProcessError as e:
print(e.returncode)
print(e.output.decode())
上述代码执行 command
命令,并捕获可能的错误。如果命令执行成功,将输出保存在 output
变量中,否则将返回值保存在 e.returncode
中,错误信息保存在 e.output
中。
- 执行命令并传递参数:
import subprocess
filename = 'example.txt'
subprocess.call(['touch', filename])
上述代码执行 touch
命令,并传递参数 filename
,在当前目录下创建一个名为example.txt
的文件。
- 执行命令并传递输入:
import subprocess
input_data = 'Hello World!'
output = subprocess.check_output(['grep', 'World'], input=input_data.encode())
print(output.decode())
上述代码执行 grep 'World'
命令,并将 input_data
作为输入传递给命令。输出结果包含 World
的行将被保存在 output
变量中。
这只是 subprocess
模块的一些基本用法,还有很多其他功能可以探索。请查阅官方文档以获得更详细的信息:https://docs.python.org/3/library/subprocess.html</p>
丸趣 TV 网 – 提供最优质的资源集合!
正文完