在Python里,执行Shell脚本的4种方法

目录

前期准备:

方法一:os模块的system()方法

方法二:os模块的popen()方法

方法三:subprocess模块的call()方法

方法四:sh库


前期准备:

.sh文件

在Python里,执行Shell脚本的4种方法_第1张图片

方法一:os模块的system()方法

Python自带的执行Shell脚本的方法,不返回执行的结果,最后返回一个0,代表执行成功。

import os

#方法一:os模块的system()方法
#执行单个Shell命令
print(os.system('echo Hello world 1'))
#执行Shell脚本
print(os.system('scripts/test.sh'))

运行结果:

在Python里,执行Shell脚本的4种方法_第2张图片

方法二:os模块的popen()方法

Python自带的执行Shell脚本的方法,返回执行的结果,返回的是一个文件对象,可以通过read()方法读取结果。

import os

#方法二:os模块的popen()方法
#执行单个Shell命令
f = os.popen('echo Hello world 1')
print(f.read())
#执行Shell脚本
f2 = os.popen('scripts/test.sh')
print(f2.read())

运行结果:

在Python里,执行Shell脚本的4种方法_第3张图片

方法三:subprocess模块的call()方法

Python自带的执行Shell脚本的方法,不返回执行的结果,最后返回一个0,代表执行成功。

import subprocess

#方法三:subprocess模块的call()方法
#执行单个Shell命令
print(subprocess.call('echo Hello world 1', shell=True))
#执行Shell脚本
print(subprocess.call('scripts/test.sh', shell=True))

运行结果:

在Python里,执行Shell脚本的4种方法_第4张图片

注:subprocess模块通过子进程来执行外部指令,并通过input/output/error管道,获取子进程的执行的返回信息。

方法四:sh库

Python的一个第三方库,可以直接执行Shell命令和脚本

import sh

#方法四:sh库
#执行单个Shell命令
print(sh.echo('Hello world 1'))
#执行Shell脚本
print(sh.sh('scripts/test.sh'))

运行结果:

在Python里,执行Shell脚本的4种方法_第5张图片

你可能感兴趣的:(面试题,#,Python,面试,python)