私たちのIT部門はWindows 8に移行しており、誰もがcmd.exe
ではなくデフォルトのWindowsコマンドライン環境としてPowerShellを使用し始めています。PowerShellのコマンドラインで生の文字列をコマンドに渡すにはどうすればよいですか?
残念ながら、PowerShellは入力したものを評価し、未処理のコマンドライン引数をプログラムに渡すことは非常に困難です。
たとえば、出力をフォーマットする特別な文字列を受け取るプログラムinventory.exe
があります。私は神秘的なエラーが出るように私は、PowerShellで、この特別な文字列を渡すことはできません。
PS C:\Users\Administrator> inventory.exe 'inventory "," date "," owner'
inventory.exe error: No comma allowed
私はPowerShellが何とか'inventory "," date "," owner'
文字列を評価し、その結果としてinventory.exe
プログラムに渡された何か他のものは、それがエラーを印刷することを前提としています。
このプログラムはcmd.exe
で[OK]を動作します:
C:\Documents and Settings\boda> inventory.exe 'inventory "," date "," owner'
... (the output that I expect) ...
私は、このような%
、PowerShellの$
などの文字を入力する場合はそれも悪くなります。
生の文字列をPowerShellのコマンドに渡す方法を知っている人はいますか?
+1それは素晴らしいリンクです! –
その構文について知りませんでした。ありがとう:) –