子进程错误消息:[Errno 2]在_execute_child raise child_异常中

2024-03-29 00:03:54 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的程序中,我调用命令:

command_two = 'sfit4Layer0.py -bv5 -fs'
subprocess.call(command_two.split(), shell=False)

我正在使用PyCharm,我收到错误消息:

^{pr2}$

当遍历我的程序时,它永远无法到达我想要它的程序sfit4Layer0.py,它被困在子进程中,但我不知道为什么。更改shell=True也没有任何帮助-我没有收到这些错误消息,但它不能正确执行我的代码。任何建议都会有帮助。在

我的bash简介:

PATH="~/bin:/usr/bin:${PATH}"

export PATH PYTHONPATH="/Users/nataliekille/Documents/sfit4/pbin/Layer0:/Users/nataliekille/Documents/sfit4/pbin/Layer1:/Users/nataliekille/Documents/sfit4/pbin/ModLib:/Users/nataliekille/Documents/sfit4/SpectralDB"

export PYTHONPATH

PATH=${PATH}:${PYTHONPATH}

export PATH

Tags: pathpy程序错误exportshelluserscommand
1条回答
网友
1楼 · 发布于 2024-03-29 00:03:54

您错过了an important part of the ^{} documentation。“如果在命令中传递单个字符串,而不是字符串列表,则shell必须为True(见下文),否则字符串必须简单地命名要执行的程序,而不指定任何参数。”

因此内核是比较的,因为没有名为'sfit4Layer0.py -bv5 -fs'的可执行文件。如果将字符串替换为(例如)'sfit4Layer0.py -bv5 -fs'.split(),或['sfit4Layer0.py', '-bv5', '-fs'],则应该可以。在

相关问题 更多 >