这应该是一个非常明显的问题...并且我已经研究了建议的“重复”答案...没有办法...只有我的“硬编码解决方案有效:-( 我只想在Start-Job-ScriptBlock {}命令中有一个参数(路径)。这是我的情况:
rsync
这很好用,但是经过硬编码;以下是我尝试未成功的许多解决方案中的一些:
$MyVariable = "C:\TestPath\Load.ps1"
Start-Job -ScriptBlock { C:\TestPath\Load.ps1 ; while($true) { Get-DataX | Add-ToTable "XXX" ; Start-sleep -s 120}}
但是它们都不起作用...那么,如何在Start-Job -ScriptBlock {...}行内传递$ MyVariable呢?也许我的问题出在其他地方?想法非常受欢迎...
谢谢!
菲利普
答案 0 :(得分:0)
应该看起来像这样:
Start-Job -ScriptBlock {
param($MyVariable)
Get-ChildItem $MyVariable;
while($true)
{ Get-DataX ; Start-sleep -s 120}
} -ArgumentList $MyVariable
这是一个很棒的article,它将帮助您了解有关Powershell中脚本块的更多信息。