SeroSoft 10 Geschrieben 22. August 2010 Melden Teilen Geschrieben 22. August 2010 (bearbeitet) Hi zusammen, ich hätte gerne in der Powershell die Rückgabe von SVN um diese auszuwerten. Warum ich das machen möchte? Wenn ich beim Auschecken z.B. eine zu hohe Version angegeben habe kommt folgende Meldung: svn: No such revision 230 Diese habe ich versucht so einzufangen: $return = iex("svn checkout -r" + $rev + " http://192.168.0.1:3330/svn/serosoft C:\Apache\htdocs\") "Rückgabe: " + $return Zurück kommt leider nix :-( Vielleicht hat jemand nen Tipp für mich wie man das umsetzen kann. MfG bearbeitet 22. August 2010 von SeroSoft Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 22. August 2010 Melden Teilen Geschrieben 22. August 2010 Was ist iex? Zitieren Link zu diesem Kommentar
SeroSoft 10 Geschrieben 22. August 2010 Autor Melden Teilen Geschrieben 22. August 2010 Siehe PS Hilfe: PS C:\> get-help iex NAME Invoke-Expression ÜBERSICHT Führt Befehle oder Ausdrücke auf dem lokalen Computer aus. SYNTAX Invoke-Expression [-Command] <string> [<CommonParameters>] BESCHREIBUNG Mit dem Cmdlet "Invoke-Expression" wird eine angegebene Zeichenfolge als Befehl ausgewertet oder ausgeführt, und es gibt die Ergebnisse des Ausdrucks bzw. Befehls zurück. Ohne Invoke-Expression wird eine in der Befehlszeile gesend ete Zeichenfolge unverändert zurückgegeben (als Echo angezeigt). VERWANDTE LINKS Online version: http://go.microsoft.com/fwlink/?LinkID=113343 (möglicherweise auf Englisch) Invoke-Command HINWEISE Zum Aufrufen der Beispiele geben Sie Folgendes ein: "get-help Invoke-Expression -examples". Weitere Informationen erhalten Sie mit folgendem Befehl: "get-help Invoke-Expression -detailed". Technische Informationen erhalten Sie mit folgendem Befehl: "get-help Invoke-Expression -full". Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 22. August 2010 Melden Teilen Geschrieben 22. August 2010 Hallo, Speicher den Ausdruck in der Klammer zuerst in eine Variable und schau dir diese an, ob sie den richtigen Inhalt enthält. In Powershell kannst du Variablen und festen Text in einem String verknüpfen, der von " " eingerahmt wird. Deine Stringverknüpfung sieht noch sehr VBS-like aus. Mit dem Backtick (Escape Operator) ` kannst du PowershellSonderzeichen zu Text maskieren. schau mal in der PS-Hilfe: about_escape_characters cu blub Zitieren Link zu diesem Kommentar
SeroSoft 10 Geschrieben 22. August 2010 Autor Melden Teilen Geschrieben 22. August 2010 Oh ich hab nicht das Problem das mein Programm nicht läuft. Mein Problem ist einfach das ich das was das Programm in die Konsole schreibt "abfangen" möchte. Also die Ausgabe abfangen. Dabei würde mir die Erste Zeile ausreichen. Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 22. August 2010 Melden Teilen Geschrieben 22. August 2010 $return[0] ? Zitieren Link zu diesem Kommentar
SeroSoft 10 Geschrieben 22. August 2010 Autor Melden Teilen Geschrieben 22. August 2010 Bringt auch nix wenn auf die iex nix zurück kommt :-( SVN gibt eine Ausgabe auf die Konsole die ich aber mit meiner Var. $return nicht einlesen kann. Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 22. August 2010 Melden Teilen Geschrieben 22. August 2010 ich denke, dass es an der Syntax des Strings in der Klammer liegt. Daher würde ich die Syntax wie oben beschrieben überprüfen. bei deinem -r" + $rev kann ich mir vorstellen, dass ein Leerzeichen fehlt. Und ob Powershell bzw. iex die unmaskierten Slashes und Doppelpunkte richtig interpretiert, sollte man überprüft haben $return = iex("ipconfig -all") funktioniert zum Beispiel cu blub Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.