2010-02-21 203 views
2

我想調用一個腳本,該腳本將數據作爲另一個腳本的參數。Powershell:傳遞輸出腳本的參數

ex。

scriptA.ps1 -parameter1(scriptB.ps1 -data 'testOne')

我只是把(),因爲我認爲這會工作,但似乎無法得到它的工作。有任何想法嗎?我試過$()和「」無濟於事。

謝謝。

回答

2

如果你想通過scriptB.ps1作爲腳本塊,然後使用

./scriptA.ps1 -parameter1 {./scriptB.ps1} 

如果要scriptB.ps1的輸出傳遞作爲一種類型(即 - 假定scriptB輸出型),然後使用

./scriptA.ps1 -parameter1 (./scriptB.ps1) 
+0

使用@Keith Hill的輸入,我刪除了調用操作符和參數1參數中的「$」。 – dugas 2010-02-22 01:49:09

4

在這種情況下,您很可能在與scripta.ps1相同的目錄中有scriptb.ps1。如果沒有明確指定路徑(絕對或相對路徑),PowerShell不會在同一個目錄中運行腳本。以下就足以使這項工作:

.\scripta.ps1 -parameter1 (.\scriptB.ps1 -data 'testOne') 
+0

@Keith Hill - 你是絕對正確的,我編輯了我的答案,從參數1參數中刪除「$」和調用操作符來反映。 – dugas 2010-02-22 01:47:19

+0

沒問題。 PowerShell是一個驚人的深井。我仍然學習有關PowerShell的新東西,自2006年以來我一直是PowerShell MVP。:-) – 2010-02-22 16:20:51

相關問題