阅读量:0
在Python中执行Shell脚本有以下几种方法:
- 使用
os.system()
函数:这个函数可以执行shell命令,并返回命令的返回值。例如:
import os os.system('ls -l')
- 使用
subprocess.run()
函数:这个函数可以执行shell命令,并返回一个CompletedProcess
对象,其中包含命令的返回值、输出和错误输出。例如:
import subprocess result = subprocess.run('ls -l', shell=True) print(result.returncode) # 返回值 print(result.stdout) # 输出 print(result.stderr) # 错误输出
- 使用
subprocess.Popen()
函数:这个函数可以执行shell命令,并返回一个Popen
对象,可以通过该对象的方法获取命令的返回值、输出和错误输出。例如:
import subprocess proc = subprocess.Popen('ls -l', shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) stdout, stderr = proc.communicate() print(proc.returncode) # 返回值 print(stdout) # 输出 print(stderr) # 错误输出
- 使用
os.popen()
函数:这个函数可以执行shell命令,并返回一个文件对象,可以通过该对象读取命令的输出。例如:
import os output = os.popen('ls -l').read() print(output)
这些方法可以根据具体的需求选择使用,其中subprocess.run()
和subprocess.Popen()
函数更加强大灵活,可以更好地处理命令的输入、输出和错误输出。