502 Stimmen

So führen Sie eine EXE-Datei in PowerShell mit Parametern mit Leerzeichen und Anführungszeichen aus

Wie führen Sie den folgenden Befehl in PowerShell aus?

C:\Program Dateien \IIS\Microsoft Web-Bereitstellung \msdeploy.exe -verb:sync -source:dbfullsql="Data Source=mysource;Integrated Security=false;User ID=sa;Pwd=sapass!;Database=mydb;" -dest:dbfullsql="Data Source=. \mydestsource Integrierte Sicherheit=false;Benutzer-ID=sa;Pwd=sapass!;Datenbank=mydb;",computername=10.10.10.10,username=administrator,password=adminpass"

-1voto

Randall Borck Punkte 736

Ich bin also auf ein ähnliches Problem gestoßen und habe mich stattdessen für diese Lösung entschieden:

  1. Anführungszeichen (") mit einem Backtick (`) ausklammern
  2. Umgeben Sie Ihren neuen Ausdruck mit Anführungszeichen (")
  3. Verwenden Sie den Aufrufoperator (&) und geben Sie den Befehl invoke-expression auf die neue Zeichenkette

Beispiellösung:

& { invoke-Ausdruck " C:\Program Dateien \IIS\Microsoft Web-Bereitstellung \msdeploy.exe -verb:sync -source:dbfullsql=`"Data Source=mysource;Integrated Security=false;User ID=sa;Pwd=sapass!;Database=mydb;`" -dest:dbfullsql=`"Data Source=. \mydestsource ;Integrated Security=false;User ID=sa;Pwd=sapass!;Database=mydb;`",computername=10.10.10.10,username=administrator,password=adminpass`"" }

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X