如何从python代码调用shell脚本?

2024-05-08 03:31:18 发布

您现在位置:Python中文网/ 问答频道 /正文


Tags: python
3条回答

如果要向shell脚本传递一些参数,可以使用方法shlex.split()

import subprocess
import shlex
subprocess.call(shlex.split('./test.sh param1 param2'))

test.sh放在同一文件夹中:

#!/bin/sh
echo $1
echo $2
exit 0

输出:

$ python test.py 
param1
param2

有一些方法可以使用os.popen()(不推荐)或整个subprocess模块,但是this approach

import os
os.system(command)

是最简单的。

subprocess模块将帮助您解决问题。

明显微不足道的例子:

>>> import subprocess
>>> subprocess.call(['./test.sh']) # Thanks @Jim Dennis for suggesting the []
0 
>>> 

其中,test.sh是一个简单的shell脚本,0是此运行的返回值。

相关问题 更多 >