如何从python运行一个调用另一个脚本的shell脚本?
问题描述:
这里的shell脚本的例子:如何从python运行一个调用另一个脚本的shell脚本?
python command_name.py --shell positional_arg1 positional_arg2 --option optional_arg1 --True_flag
我只是希望能够从一个python脚本中调用这个这样我就可以通过脚本循环,通过每个循环改变不同的参数。
答
import subprocess
p = subprocess.Popen(["python", "--shell", "positional_arg1", "positional_arg2",
"--option", "optional_arg1", "--True_flag"], shell=True,
stdout=subprocess.PIPE)
out, err = p.communicate()
答
import subprocess
import shlex
cmd = """python command_name.py --shell positional_arg1 positional_arg2 --option optional_arg1 --True_flag"""
returncode = subprocess.check_call(shlex.split(cmd))
# or maybe you want:
# out = subprocess.check_output(shlex.split(cmd))