Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] funktion system() für svn befehle

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] funktion system() für svn befehle

    Hallo zusammen,

    ich schlage mich seit heute mit dem ausführen von Kommandos über php scripte rum.
    Mit mäßigem Erfolg.
    Gebe ich diese beiden Befehle nach einander in die Eingabeaufforderung ein, klappt alles super.
    Will ich diese Befehle in PHP ausführen, klappt gar nüscht:
    PHP-Code:
       $ouput system("cd C:\\Projekte\\MyProject");
       echo 
    "<p>0. <pre>".$output."</pre></p>";
       
    $ouput system("svn -v status");
       echo 
    "<p>1. <pre>".$output."</pre></p>"
    Ich habe die Funktion system genutzt weil ich diese mehrfach im Internet gefunden habe. Mag sein, dass es eine ungünstige Lösung für mein Problem ist. Daher bin ich für Vorschläge und sogar Kritik besonders offen .
    Ich hoffe ihr könnt mir da weiter helfen, da eine gescheite Versionsverwaltung mit Branches Tags und den ganzen Kram doch sehr viel Klicken bedarf. Habe bisher nur auf dem TRUNK gearbeitet(ja ich weiß. RISKANT). Daher reichte TortoiseSVN, wenige klicks. Jetzt aber würde ich gerne das erstellen eines branches vom Trunk und das Auschecken des erstellten branches automatisieren. Daher das interesse an den commands.

    Danke und Gruß
    Die Jatravartiden auf Viltwodl VI können den Kram von dir auch nicht nachvollziehen


  • #2
    Was bringt
    PHP-Code:
    $ouput system("cd C:\\Projekte\\MyProject && svn -v status"); 
       echo 
    "<p>1. <pre>".$output."</pre></p>"
    ?
    Zitat von nikosch
    Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

    Kommentar


    • #3
      Zitat von tkausl Beitrag anzeigen
      Was bringt
      PHP-Code:
      $ouput system("cd C:\\Projekte\\MyProject && svn -v status"); 
         echo 
      "<p>1. <pre>".$output."</pre></p>"
      ?
      Naja in der Eingabeaufforderung wechsel ich damit das Verzeichnis auf die Working Copy. Der zweite Befehl listet mir Status Infos auf.
      So hoffte ich klappt das auch beim ausführen über die Funktion system()
      Ich hab schon
      PHP-Code:
      system("ipconfig"); 
      versucht und habe da zumindest eine Fehlermeldung bekommen
      Die Jatravartiden auf Viltwodl VI können den Kram von dir auch nicht nachvollziehen

      Kommentar


      • #4
        hallo,

        PHP-Code:
           $ouput system("cd C:\\Projekte\\MyProject");
           echo 
        "<p>0. <pre>".$output."</pre></p>";
           
        $ouput system("svn -v status");
           echo 
        "<p>1. <pre>".$output."</pre></p>"
        wenn das dein echter code ist, dann ist $output leer, weil du nur $ouput definierst. ansonsten error reporting einschalten.

        Kommentar


        • #5
          Zitat von jogi31 Beitrag anzeigen
          hallo,



          wenn das dein echter code ist, dann ist $output leer, weil du nur $ouput definierst. ansonsten error reporting einschalten.
          Puh, ich dachte schon ich nase. Aber war nur falsch abgetippt...Im Script steht es richtig :=)
          PHP-Code:
          error_reporting(-1);
          ini_set('display_errors'1);
          ini_set('display_startup_errors'1); 
          hab das ja ausgeführt und das ganze nochmal laufen lassen. Gibt mir weiterhin nichts zurück.
          Habe nochmals das ganze mit ipconfig versucht und hier gibt er mir zumindest Meldungen
          Die Jatravartiden auf Viltwodl VI können den Kram von dir auch nicht nachvollziehen

          Kommentar


          • #6
            bist du sicher, dass es keinen syntax fehler gibt? du könntest mal echos an verschiedenen stellen einbauen und schauen, ob diese ausgegeben werden.

            Kommentar


            • #7
              Zitat von jogi31 Beitrag anzeigen
              bist du sicher, dass es keinen syntax fehler gibt? du könntest mal echos an verschiedenen stellen einbauen und schauen, ob diese ausgegeben werden.
              Also ich habe absichtlich diese Zahlen mit hineingebracht 0 und 1
              PHP-Code:
              echo "<p>0. <pre>".$output."</pre></p>";
              echo 
              "<p>1. <pre>".$output."</pre></p>"
              Um sicher zu gehen, das die echos überhaupt erreicht werden...und japp werden sie. Hab aus Testzwecken nun das ganze so erweitert:
              PHP-Code:
                 $ouput system("ipconfig");
                 echo 
              "<p>-1. <pre>".$output."</pre></p>";
              $ouput system("cd C:\\Projekte\\MyProject");
                 echo 
              "<p>0. <pre>".$output."</pre></p>";
                 
              $ouput system("svn -v status");
                 echo 
              "<p>1. <pre>".$output."</pre></p>"
              Hier wird mir brav eine Fehlermeldung ausgegeben, es sei an dieser Stelle gesagt, dass dieses Script auf einem Testrechner läuft...dieser befindet sich nicht im Netwerk.
              Zur ipconfig Meldung:

              -1 Medienstatus:.....keine Verbindung
              das echo liefert nur den "letzten Satz", vorm echo wird mir sogar der ganze kram ausgegeben. Jedoch nicht bei den anderen Befehlen.

              ich würd mich ja sogar über eine Fehlermeldung freuen, aber gar nichts frustet
              Die Jatravartiden auf Viltwodl VI können den Kram von dir auch nicht nachvollziehen

              Kommentar


              • #8
                Siehe: http://de2.php.net/system
                Zitat von nikosch
                Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

                Kommentar


                • #9
                  OK verstanden...cd bringt mir nichts...da beim nächsten ausführen von system() mein dir wieder aktuelle position ist...sprich wo das script liegt...na mal schaun ob das anders möglich ist....danke dir
                  Die Jatravartiden auf Viltwodl VI können den Kram von dir auch nicht nachvollziehen

                  Kommentar


                  • #10
                    Auch, das wollte ich auch in meinen Beitrag #2 sagen, du hast dir nur den Quellcode nicht angeschaut.
                    Außerdem:
                    system — Execute an external program and display the output
                    Zitat von nikosch
                    Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

                    Kommentar


                    • #11
                      Zitat von tkausl Beitrag anzeigen
                      Auch, das wollte ich auch in meinen Beitrag #2 sagen, du hast dir nur den Quellcode nicht angeschaut.
                      Bevor ich mir das Außerdem einflöße...zu dem kurz:

                      Ich hab deinen zweiten Beitrag falsch verstanden...Ich habe "Was bringt" im Sinne von was bringt dir das als Ausgabe verstanden. Und da wollte ich anschließend damit sagen...Es sollte mir etwas ausgeben, gibt mir aber nüscht auf dem Bildschirm aus....

                      Sorry
                      Die Jatravartiden auf Viltwodl VI können den Kram von dir auch nicht nachvollziehen

                      Kommentar


                      • #12
                        Hi,

                        nimm mal die Funktion chdir und lass dir das Verzeichnis ausgeben,

                        wenn der Wechsel funktioniert hat.

                        PHP-Code:
                        <?php
                        $ordner 
                        "/home/tmp";
                        if(@
                        chdir($ordner)){
                         
                        system("dir");
                        }else{
                            echo 
                        "Wechsel zum Ordner ".$ordner." nicht möglich.";
                            }
                        ?>
                        Gruß
                        Günni

                        Kommentar


                        • #13
                          Zitat von Günni Beitrag anzeigen
                          Hi,

                          nimm mal die Funktion chdir und lass dir das Verzeichnis ausgeben,

                          wenn der Wechsel funktioniert hat.

                          PHP-Code:
                          <?php
                          $ordner 
                          "/home/tmp";
                          if(@
                          chdir($ordner)){
                           
                          system("dir");
                          }else{
                              echo 
                          "Wechsel zum Ordner ".$ordner." nicht möglich.";
                              }
                          ?>
                          Gruß
                          Günni
                          Vielen Dank Das bringt mich zumindest schonmal weiter
                          Die Jatravartiden auf Viltwodl VI können den Kram von dir auch nicht nachvollziehen

                          Kommentar

                          Lädt...
                          X