【发布时间】:2020-08-30 14:51:39
【问题描述】:
有时我在运行各种命令时遇到问题(我正在使用 Git Bash,如果这很重要的话)。例如,当我尝试执行时:
az container exec --resource-group My-RG --name influxdb-container --exec-command "/bin/bash"
上面的命令通常应该“SSH”到 Azure 容器实例。然而,相反,我得到:
'C:\Program' 未被识别为内部或外部命令, 可运行的程序或批处理文件。
我发现很多关于 SO 的帖子都有这样的错误,但是,这些帖子中的问题是关于在没有正确引用“C:\Program Files”的情况下调用命令。然而,就我而言,任何地方都没有“程序文件”,所以我很难找出问题所在。
az 命令被 shell 识别,当我单独调用它时,我会从 Azure CLI 得到正确的响应。
我有时在运行 docker 命令时也会遇到类似的错误。不幸的是,现在我不知道究竟是哪个命令会导致这种情况。
这个问题只发生在我的 Windows 机器上。当我从 Linux 或 macOS 运行命令时,它就可以正常工作。
az 有效的证明:
【问题讨论】:
-
这可能是引用错误,但它会从您的环境变量或我猜想的注册表中获取未引用的字符串,并且无论出于何种原因都无法正确处理它。我没有任何好的想法从哪里开始寻找。 azure-cli 是否有任何明显的配置可以检查 C:\Program Files\ 的实例?
-
@Rup 我浏览了
%USERPROFILE%\.azure并没有看到类似的东西。 -
/bin/bash是脚本文件吗? (.cmd 或 .bat) -
@avery_larry "/bin/bash" 是我想在我的 Azure 容器实例中运行的程序
-
请原谅我不熟悉 Azure CLI。但是,我试图找出 /bin/bash 是否是您可以访问的物理文件。如果是,那么我想知道它是 bash.cmd 或 bash.bat 还是 bash.pl 或 bash.exe 或 bash.com 或其他什么。或者您可以使用记事本打开文件并查看其中是否有任何未引用的“c:\program files”行。
标签: bash cmd git-bash azure-cli azure-cli2