首页 > 解决方案 > 在python中调用带有参数的bash脚本

问题描述

我正在尝试通过 python 脚本执行以下操作。但我收到一个错误。 Unknown option:-a test -b 25 -c 18 --d 25 23

script_args = '-a test -b 25 -c 18 --d 25 23'
subprocess.Popen(['/home/pi/bash/bash_script.sh', script_args])

我可以复制未知选项行并执行我的脚本,脚本运行时没有任何错误,我得到了所需的输出。

 /home/pi/bash/bash_script.sh -a test -b 25 -c 18 --d 25 23

我通过 python 脚本做错了什么?

标签: pythonpython-3.xbash

解决方案


您正在传递由所有这些字符组成的单个参数。

script_args = ['-a', 'test', ..., '23']
subprocess.Popen(['/home/pi/bash/bash_script.sh'] + script_args)

推荐阅读