【发布时间】:2013-04-14 02:02:22
【问题描述】:
我正在执行这段代码:
p = subprocess.Popen(['/path/to/my/script.sh','--flag'] , stdin=subprocess.PIPE)
p.communicate(input='Y')
p.wait()
它在使用“python scriptName.py”在shell上执行时有效, 但是在Eclipse中使用PyDev执行时失败了,原因:
/path/to/my/script.sh:第 111 行:服务:找不到命令
此 bash 脚本“script.sh”包含以下导致错误的命令:
服务 mysqld 重启
所以从 PyDev 的上下文运行 .sh 脚本时无法识别“服务”。 我想这与一些 ENV VAR 配置有关,找不到如何去做。
- 顺便说一句 - 在调用 subprocess.Popen 时使用“shell=True”并没有解决它。
【问题讨论】:
-
您使用的是哪个操作系统(环境变量设置和设置位置不同)
标签: subprocess pydev