python3 subprocess.run()获取系统找不到Windows docker容器中指定的文件
跑步时 subprocess.runargs=['ls/'],stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True 在window docker容器中,出现以下错误: [WinError 2]系统找不到指定的文件 但它从未在我的windows主机上发生过 python版本:3.6.6 windows docker映像:winservercore:1803 有什么线索或建议吗?当你说python3 subprocess.run()获取系统找不到Windows docker容器中指定的文件,python,docker,subprocess,docker-container,docker-for-windows,Python,Docker,Subprocess,Docker Container,Docker For Windows,跑步时 subprocess.runargs=['ls/'],stdout=subprocess.PIPE,stderr=subprocess.PIPE,shell=True 在window docker容器中,出现以下错误: [WinError 2]系统找不到指定的文件 但它从未在我的windows主机上发生过 python版本:3.6.6 windows docker映像:winservercore:1803 有什么线索或建议吗?当你说 args=['ls /'] 您正在尝试运行一个名为l
args=['ls /']
您正在尝试运行一个名为ls/的命令;在有常规文件扩展名的Windows上下文中,它可能被命名为ls/.exe。你可能是说这是两个独立的词,需要单独包含在参数列表中
args=['ls', '/']
不要指定shell=True。这是一个危险的选项,使您的脚本成为潜在的安全问题载体。谢谢您,David,您的建议确实有效。然而,我只是想知道为什么我提供的方法可以在我的Windows10主机上使用完全相同的Python版本。此外,当我尝试在一行中执行两个命令时,如args=['ls','/',';','echo','1'],将出现错误,这似乎将echo 1解析为ls中的一个参数