Como faço para escapar corretamente das aspas no -param
valor na linha de comando a seguir?
$cmd="\\server\toto.exe -batch=B -param="sort1;parmtxt='Security ID=1234'""
Invoke-Expression $cmd
Isso, claro, falha. Tentei escapar das aspas (simples e duplas) usando o caractere de escape `e fiz várias combinações, mas nada está funcionando.
$someCommandStringWithDoubleQuotes | cmd
. Na verdade, isso funciona a partir de scripts do PowerShell (por exemplo, invocar CMake (que requer aspas duplas (caso contrário, falhará silenciosamente)). Uma alternativa ao CMD é bash.exe ( MinGW ) - mas pode ser muito, muito lento para iniciar em algumas circunstâncias.