【发布时间】:2011-06-06 14:34:33
【问题描述】:
我正在尝试使用 call 命令从 python 脚本 (python_script.py) 调用 shell 脚本 shell_script.sh。 shell_script.sh 调用需要 root 访问权限才能执行的可执行文件。
python_script.py 使用 subprocess.call() 调用 shell_script.sh。
见下文:
subprocess.call(['/complete_path/shell_script.sh', 'param1', 'param2',
'param3'], shell=True)
当我尝试执行 python 脚本python_script.py 时,它给了我权限被拒绝。
我尝试了不同的方法。
a) 使用 sudo 调用 python - sudo python python_script.py
b) 在调用方法内部调用 sudo - subprocess.call(['sudo' '/complete_path/shell_script.sh', 'param1', 'param2',
'param3'], shell=True)
解决此问题的最佳方法是什么。
谢谢。
【问题讨论】:
标签: python linux shell root sudo