现在,我正在尝试使用Powershell脚本来读取文本文件并执行其中提到的所有Powershell脚本,但我无法获得任何结果。我试过用这种方式指定它:
Start-Job -ScriptBlock{powershell.exe -noexit $val} -name $jobnum
这样:
Start-Job -ScriptBlock{$val}
($val
是文本行的值)
但它不会运行写在该行上的脚本。
我试过这种方式:
Start-Job -FilePath($val) -name $jobnum
但是我收到了这个错误:
Start-Job
:FilePath
参数只允许使用PowerShell脚本文件。指定扩展名为.ps1
的文件。
即使$val
的值是指向ps1
扩展名的文件的合法路径!
我的文字行如下所示:C:\Users\me\Desktop\notepad.ps1
如何让我的Powershell脚本读入文本并运行文本中给出路径的ps1
脚本?
答案 0 :(得分:2)
关于
Start-Job -ScriptBlock {powershell.exe -noexit $val} -name $jobnum
您需要指定-ArgumentList
参数,如下所示:
Start-Job -ScriptBlock {param($v) .. your command using $v} -name $jobnum -argumentlist $val
否则作业不知道$value
。
答案 1 :(得分:0)
没关系,问题是因为我在做-FilePath($ val)而不是-FilePath $ val。