【问题标题】:Powershell can't access runtime environment variablesPowershell 无法访问运行时环境变量
【发布时间】:2020-05-07 09:31:12
【问题描述】:

我想创建一个调用 Powershell 脚本进行处理的任务。但是我无法从我的 Powershell 脚本访问 Azure Batch 运行时环境变量。

我可以通过cmd访问,下面的命令正确输出

D:\batch\tasks\applications\test12020-05-04-17-32':

cmd /c echo %AZ_BATCH_APP_PACKAGE_Test#1%

但是下面等效的 Powershell 命令显示不正确的输出

%AZ_BATCH_APP_PACKAGE_Test#1%':

powershell -Command echo %AZ_BATCH_APP_PACKAGE_Test#1%

当然有一种解决方法是创建一个 .bat 脚本来调用我的 .ps1 脚本。但我一直在寻找更好的解决方案。

是否可以从 Powershell 访问 Azure Batch 运行时环境变量?

【问题讨论】:

  • exho 不是真正的 PowerShell 命令,试试:powershell -Command $Env:AZ_BATCH_APP_PACKAGE_Test#1?
  • 正如iRon 暗示的那样,您在powershell 中使用%name% ...这对于访问环境变量不起作用。你应该改用$env:Name
  • stackoverflow.com/questions/58631018/…(请参阅已接受帖子的最后一点)为您提供答案。

标签: azure powershell azure-batch


【解决方案1】:

正如 iRon 所说,echo 并不是真正的 PowerShell 命令,请尝试以下代码:

powershell -Command $Env:ComSpec

我本地的环境变量如下:

这是 PowerShell 运行快照:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-27
    • 2014-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-08
    • 2021-05-05
    • 2014-07-29
    相关资源
    最近更新 更多