CMD:将命令结果绑定到变量,并在下一次调用中使用它

时间:2018-09-13 08:57:30

标签: batch-file cmd

我正在尝试获取一个简单的cmd脚本,以从Azure密钥保管库检索秘密,然后使用dotnet-secrets将其设置为我的本地用户秘密设置。 假设我已经登录到Azure cli。

我想做这样的事情:

set dbConnectionString=az keyvault secret show --vault-name "vaultname" --name "name" --query "value"
dotnet user-secrets set ConnectionStrings:DefaultConnection %dbConnectionString%

我如何编写它以便在cmd脚本中工作?

1 个答案:

答案 0 :(得分:1)

根据我的评论,使用for实现此目的:

来自cmdline:

for /f "delims=" %i in ('az keyvault secret show --vault-name "vaultname" --name "name" --query "value"') do set "variable=%i" && echo %variable%

来自批处理文件:

@echo off
for /f "delims=" %%i in ('az keyvault secret show --vault-name "vaultname" --name "name" --query "value"') do set "variable=%%i"
echo %variable%