Jump to content

PS- Start-Process mit Argumenten funktioniert nicht wie gewünscht


Direkt zur Lösung Gelöst von ineedhelp,
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

@All

 

Mittels Powershell möchte ich mysql.exe mit Parametern starten. Hierfür benutze ich das Start-Process-Cmdlet und führe es wie folgt aus:

image.thumb.png.d1ffe6e2cac1a8515e947b01101a3c5b.png

Die Datei databases.txt ist nicht im Zielordner vorhanden.

 

Wenn ich mir Startinformationen des process-Objekt anzeige lasse und diese in Eingabeaufforderung ausführe, dann wird die Datei erstellt.

image.thumb.png.7e6f92e39a2e3fa8c0c57b01f3102720.png

 

Wie muss der Aufruf von Start-Process aussehen, damit die Statements angewendet werden. "Show databases;" war nur für Testzwecke. Später sollen die Backupinformationen in die Datenbank geschrieben werden. 

 

Ich habe schon vieles erfolglos ausprobiert: andere Anführungszeichen verwendet. cmd.exe und mysql.exe mit Parametern gestartet, usw.

 

Danke für Eure Hilfe.

 

 

 

Geschrieben (bearbeitet)

BItte keine Bilder von Code posten. Das ist kontraproduktiv, da man den Code im Zweifel nicht kopieren und vielleicht mal ausführen kann. Einfach den Code mittels "</>" aus der Symbolleiste einfügen!  ;-)

 

Was passiert denn, wenn Du die Argumentliste komplett von einfachen Gänsefüßchen umschlossen übergibst? Also ungefähr so:

Start-Process -FilePath 'mysql.exe' -ArgumentList '--host=BlaKeks --user=root -password=Sicher -execute="Show databases"' -NoNewWindow -Wait

 

bearbeitet von BOfH_666
  • Beste Lösung
Geschrieben

 

vor 15 Stunden schrieb BOfH_666:

BItte keine Bilder von Code posten. Das ist kontraproduktiv, da man den Code im Zweifel nicht kopieren und vielleicht mal ausführen kann. Einfach den Code mittels "</>" aus der Symbolleiste einfügen!  ;-)

Da hast Du recht. Ich werde es sofort umsetzen.

 

Danke für den Hinweis. Folgendes brachte endlich den Erfolg:

$process = Start-Process -FilePath cmd -argumentlist "/C C:\users\...\...\mysql.exe --host=<mysqlhost> --user=root --password=<kennwort> --execute=""Show databases;"" > C:\backup\databases.txt" -PassThru -WindowStyle Hidden

 

Wie kann ich diesen Beitrag auf gelöst setzen?

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...