Bunun gibi parametrelerden kaçmak genellikle hayal kırıklığı kaynağıdır ve boşa geçen bir zaman gibi hissettirir. V2'de olduğunuzu görüyorum, bu yüzden Joel "Jaykul" Bennet'in bir süre önce blog yazdığı bir tekniği kullanmanızı öneririm. .
Uzun lafın kısası: dizinizi @ '...' @ ile sarmalamanız yeterli:
Start-Process \\server\toto.exe @'
-batch=B -param="sort1;parmtxt='Security ID=1234'"
'@
( Hangi alıntıların gerekli olduğunu ve hangi şeylerden kaçmaya çalıştığınızı varsaydığımı unutmayın.) Çıktıyla çalışmak istiyorsanız, -NoNewWindowanahtarı eklemek isteyebilirsiniz .
BTW: bu o kadar önemli bir sorundu ki, v3'ten beri --%PowerShell ayrıştırıcısının parametrelerinizle herhangi bir şey yapmasını durdurmak için kullanabilirsiniz :
\\server\toto.exe --% -batch=b -param="sort1;paramtxt='Security ID=1234'"
... orada iyi çalışmalı (aynı varsayımla).