2013-01-14 19 views
1

我的代碼如何使用任意數量的參數從powershell調用工具?

$individualSlidesOutputDir = join-path ([io.path]::GetTempPath()) ([Guid]::NewGuid()) 
set-alias pdftk 'C:\\Program Files (x86)\\PDF Labs\\PDFtk Server\\bin\\pdftk.exe' -scope script 

phantomjs ./slides2pdf.coffee $individualSlidesOutputDir #writes some files to this directory 

$args = ls $individualSlidesOutputDir | %{$_.FullName} 

pdftk $args[0] $args[1] $args[2] cat output slide-deck.pdf 

下位我需要的正是這樣,但似乎被解釋爲所有的一個參數的$ args可能使用$args -join " "不起作用值任意量。我很確定我可以在啓動過程中做到這一點,但我希望有一個不那麼麻煩的方法。

回答

3

我會避免使用$ args,因爲這是PowerShell中的保留變量。在這種情況下,它會起作用,但在其他情況下,您可能會失去對有用參數的訪問。也就是說,你應該可以像這樣調用:

pdftk $args cat output slide-deck.pdf 
+0

課程簡單。 Powershell以其簡單的設計選擇不斷讓我印象深刻。 –

相關問題