如何在GitHub工作流程/操作中的PowerShell下的名称中运行带有变量的脚本

时间:2020-05-31 21:04:26

标签: powershell batch-file github github-actions

我正在实现GitHub工作流,并且需要在PowerShell下运行带有可变部分的批处理(* .bat)脚本。这似乎不起作用。一个简单的批处理脚本运行良好。但是当我尝试在变量名中插入变量时,

我尝试过这些没有成功:

run: |
  $i=2
  call "myscript_$i.bat"

run: |
  $i=2
  .\myscript_$i.bat

run: |
  $i=2
  .\myscript_${env:i}.bat

有没有一个欧比旺可以帮助您? )

2 个答案:

答案 0 :(得分:2)

your own solution有效,Invoke-Expression should generally be avoided

要基于带引号的字符串和/或包含变量引用表达式的名称/路径来调用命令,请使用{ {1}},call operator

&

(在这种特殊情况下,您甚至可以省略括号run | $i=2 & ".\myscript_$i.bat" 。)

答案 1 :(得分:0)

好吧,经过一些试验后,此解决方案有效:

run |
  $i=2
  Invoke-Expression ".\myscript_$i.bat"