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

目录


前期准备:

.sh文件

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

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

import os

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

运行结果:

方法二: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())

运行结果:

方法三: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))

运行结果:

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

方法四:sh库

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

import sh

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

运行结果:

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
xiaoxingxing的头像xiaoxingxing管理团队
上一篇 2023年12月21日
下一篇 2023年12月21日

相关推荐