Для вашей проблемы, если вы просто хотите, например, один из двух ключей, первый. Вы можете установить переменную с ключом в качестве значения следующим образом:
key=$(az storage account keys list -g CustomersV2 -n ****estx --query [0].value -o tsv)
А затем используйте переменную key
в другой команде, например:
call az storage blob upload-batch --source "$(System.DefaultWorkingDirectory)/_ClientWeb-Build-CI/ShellArtifact/out/build" --destination "$web" --account-key $key --account-name "*****estx"
Или вы можете просто поместить команду, которая получает ключ в другую команду, прямо так:
call az storage blob upload-batch --source "$(System.DefaultWorkingDirectory)/_ClientWeb-Build-CI/ShellArtifact/out/build" --destination "$web" --account-key $(az storage account keys list -g CustomersV2 -n ****estx --query [0].value -o tsv) --account-name "*****estx"
Обновление
Согласно тому, что вы сказали, кажется, вы запускаете команду в командной строке Windows, она отличается от оболочки Linux и PowerShell. Вы не можете установить переменную среды со значением, которое выводится командой. Вы можете сделать это так:
az storage account keys list -g CustomersV2 -n ****estx --query [0].value -o tsv > key.txt
set /P key=<key.txt
az storage blob upload-batch --source "$(System.DefaultWorkingDirectory)/_ClientWeb-Build-CI/ShellArtifact/out/build" --destination "$web" --account-key %key% --account-name "*****estx"
И кажется, что вы просто можете заключить в кавычки переменную окружения как% variable_name%, поэтому кажется, что это неправильный способ использования "$web"
в вашей команде.