Jump to content
ineedhelp

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

Empfohlene Beiträge

@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.

 

 

 

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

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

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

 

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?

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

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

Werbepartner:



×