現在,我試圖使用Powershell腳本來讀取文本文件並執行其中提到的所有Powershell腳本,但我無法獲得任何結果。我已經試過指定這樣說:從文本中讀取並運行Powershell文件
Start-Job -ScriptBlock{powershell.exe -noexit $val} -name $jobnum
和這樣:
Start-Job -ScriptBlock{$val}
($val
是文本行的值) 但它不運行是寫的腳本那條線。
我已經試過這樣:
Start-Job -FilePath($val) -name $jobnum
但我得到這個錯誤:
Start-Job
: Only PowerShell script files are allowed forFilePath
parameter. Specify a file with.ps1
extension.
即使的$val
值是一個合法的文件路徑與ps1
擴展!
我的文字線條看起來像這樣:C:\Users\me\Desktop\notepad.ps1
如何讓我的PowerShell腳本讀取文本和運行ps1
腳本,在文中給出的路徑?
謝謝!今天早上我回到了程序中,需要修改它,以便它可以運行任何類型的腳本,並且您的答案是一個巨大的節省時間。 – John 2010-07-21 14:28:07
另一個問題:爲什麼這不適用於使用變量的文本行,比如$ val的這個值: $ env:the = 50 不應該創建環境變量並將其設置爲等於50 ? – John 2010-07-21 18:36:58
如果您設置了'$ env:the = 50',它會正確設置您的PowerShell會話中的變量。然而,'Start-Job'用它自己的一組變量創建一個*新進程*。使用例如ProcessExplorer(來自前SysInternals)。 – stej 2010-07-22 05:46:55