Python:子进程并运行具有多个参数的 bash 脚本

标签 python bash arguments subprocess popen

如何使用 subprocess 模块运行 bash 脚本,我必须为其提供几个参数?

这是我目前正在使用的:

subprocess.Popen(['/my/file/path/programname.sh', 'arg1 arg2 %s' % arg3], \
    shell = True)

bash 脚本似乎没有接受任何参数。非常感谢任何见解!

最佳答案

将参数作为列表传递,参见 the very first code example in the docs :

import subprocess

subprocess.check_call(['/my/file/path/programname.sh', 'arg1', 'arg2', arg3])

如果 arg3 不是字符串;在传递给 check_call() 之前将其转换为字符串:arg3 = str(arg3).

关于Python:子进程并运行具有多个参数的 bash 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17242828/

相关文章:

linux - 连接多个命令的输出并将它们用作另一个命令的输入

java - 该方法不适用于参数

javascript - 如何创建具有一个可以采用对象或变量的参数的方法或函数

python - csv导入到django模型中

python - 在seaborn上绘制y轴网格和kdeplot之间的交集

python - 将颜色条添加到表 matplotlib

linux - 为什么在 while 循环内发生 ping 未知主机?

python - numpy数组中非零值的随机索引

linux - grep -f 当模式文件也有一些空行时

Python:如何获取运行时参数的名称