我要做的就是在PS中运行以下命令
az webapp config set -g 'appXXX-dfpg-dev4-web-eastus2' -n 'appXXX-dfpg-dev4-web-eastus2-backoffice-apsvc' --linux-fx-version 'DOCKER|appXXXdeploycr.azurecr.io/dfpg/backoffice:1.0.20184.1'
我回来了
'appXXXdeploycr.azurecr.io' is not recognized as an internal or external command,
operable program or batch file.
最初我虽然 PS 误解了 | 作为管道连接,所以我用'转义了它,但它没有帮助
我知道这个答案很晚,但为了将来的参考,我将提供我的输入。您遇到的是 PowerShell 在解析参数 AZ cli 时解释管道 (|(。你可以强制 PowerShell 使用停止分析符号 --% 执行最小分析(请参阅 https://learn.microsoft.com/en-us/cli/azure/use-cli-effectively#pass-arguments(
az --% webapp config set -g 'appXXX-dfpg-dev4-web-eastus2' -n 'appXXX-dfpg-dev4-web-eastus2-backoffice-apsvc' --linux-fx-version 'DOCKER|appXXXdeploycr.azurecr.io/dfpg/backoffice:1.0.20184.1'
这将阻止您在语句中使用变量。因此,另一种解决方案是在提供给可用区的值周围使用转义引号(请参阅 Azure CLI:无法转义 Windows PowerShell 中的管道字符 (|( (
az webapp config set -g 'appXXX-dfpg-dev4-web-eastus2' -n 'appXXX-dfpg-dev4-web-eastus2-backoffice-apsvc' --linux-fx-version '"DOCKER|appXXXdeploycr.azurecr.io/dfpg/backoffice:1.0.20184.1"'
您甚至可以在版本中使用变量
$inc = "1"
$version="`"DOCKER|appXXXdeploycr.azurecr.io/dfpg/backoffice:1.0.20184.$inc`""
az webapp config set -g 'appXXX-dfpg-dev4-web-eastus2' -n 'appXXX-dfpg-dev4-web-eastus2-backoffice-apsvc' --linux-fx-version $version
Az 命令用于云外壳。是否可以尝试在 Azure 云外壳中运行此命令。还可以使用"shell.azure.com"在新选项卡中打开 Azure 外壳。