gpt4 book ai didi

python:为什么用子进程调用 echo 会返回 WindowsError 2?

转载 作者:可可西里 更新时间:2023-11-01 13:51:10 26 4
gpt4 key购买 nike

在我的程序中,我有一个函数 runScript():

def runScript():
subprocess.call(['echo', 'hello'])

我在 Python 文档中看到过许多类似的示例,因此我认为这会起作用。然而,当我在我的程序中调用这个函数时,它返回一个 WindowsError。

WindowsError: [Error 2] The system cannot find the file specified

为什么会这样?我该如何解决?

最佳答案

echo 命令内置于 Windows shell,cmd.exe。它不是一个没有外壳就可以调用的外部程序。因此,您的 subprocess.call() 需要指定 shell=True

subprocess.call('echo hello', shell=True)

(此外,shell 将为您处理拆分命令,因此我使用了更简单的单字符串样式来传递命令。)

关于python:为什么用子进程调用 echo 会返回 WindowsError 2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10933354/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com