从文本中读取和运行Powershell文件

时间:2010-07-20 19:22:36

标签: file text powershell

现在,我正在尝试使用Powershell脚本来读取文本文件并执行其中提到的所有Powershell脚本,但我无法获得任何结果。我试过用这种方式指定它:

Start-Job -ScriptBlock{powershell.exe -noexit $val} -name $jobnum

这样:

Start-Job -ScriptBlock{$val}

$val是文本行的值) 但它不会运行写在该行上的脚本。

我试过这种方式:

Start-Job -FilePath($val) -name $jobnum

但是我收到了这个错误:

  

Start-JobFilePath参数只允许使用PowerShell脚本文件。指定扩展名为.ps1的文件。

即使$val的值是指向ps1扩展名的文件的合法路径!

我的文字行如下所示:C:\Users\me\Desktop\notepad.ps1

如何让我的Powershell脚本读入文本并运行文本中给出路径的ps1脚本?

2 个答案:

答案 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。