2017-07-22 14 views
1

小さな仕事で誰かが助けてくれれば幸いです。 PowerShellスクリプト(ファイルではない)にコマンドライン引数を渡したい。powershellのコマンドラインに引数を渡す方法

メッセージボックスに表示される引数を渡したいとします。

powershell.exe -command "$str=$args[0];[System.Reflection.Assembly]:: 
LoadWithPartialName('System.Windows.Forms'); 
[System.Windows.Forms.Messagebox]::Show($str);" 'foo' 

メッセージボックスにfooを表示します。私は空のメッセージボックスを得る。おそらく私は何か小さいものを逃した。

+3

の代わりに、' -command「コード」arg'コード} arg "' –

+0

マティアスに感謝、それは動作します! – MickCic

+0

@ MathiasR.Jessen答えとしてあなたのコメントを書いてください。だから誰も時間を無駄にしません。 – JPBlanc

答えて

1

ラップスクリプトブロック{}で全体のものと引数を指定して、それを呼び出すために、呼び出し演算子&を使用:{&」 `-command行い、

powershell.exe -command "& {$str=$args[0];[System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms');[System.Windows.Forms.Messagebox]::Show($str)} 'foo'" 
関連する問題