1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Unix Befehl in PHP ausführen

Dieses Thema im Forum "Web-Programmierung" wurde erstellt von comfreak, 14.03.09.

  1. comfreak

    comfreak Roter Stettiner

    Dabei seit:
    05.11.08
    Beiträge:
    959
    Hallo zusammen!

    Der Titel sagt es eigentlich schon: Ich möchte in PHP einen Unix Befehl ausführen, also ein Befehl in der Konsole des Servers ausführen. Mit PHP kann man ja mit folgender Funktion, Befehle auf dem Server ausführen:
    Code:
    system ("[I]befehl[/I]");
    aber wie kann ich die Ausgabe in der Konsole auf die Homepage holen? Als Beispiel gibt ein Besucher eine URL an und die Ziel Datei wird dann mit wget heruntergeladen und der Besucher kann dann den ganzen Fortschritt, der dann theoretisch in der Konsole angezeigt wird, mitverfolgen..
    Wenn das so nicht funktioniert, kann ich das ganze mit einem SSH-Client realisieren oder was schlägt ihr vor? ;)

    Vielen Dank!
    Gruß comfreak
    PS: Der Server läuft auf Debian 5.0 (lenny) mit Apache 2 und PHP5
     
  2. muad

    muad Alkmene

    Dabei seit:
    25.06.08
    Beiträge:
    30
    Soweit ich weiß, kann PHP dies nicht. Da PHP den Befehl ausführt und solange wartet, bis der Befehl vollständig ausgeführt ist (bzw. bis zum Timeout) und dann erst weiterarbeitet.

    Für Shell-Ausführung kannst ja mal hier schauen: http://www.php.net/manual/de/book.exec.php

    grüße
    Muad
     
  3. comfreak

    comfreak Roter Stettiner

    Dabei seit:
    05.11.08
    Beiträge:
    959
    Hallo nochmal.

    Ich sehe gerade auf der PHP Manual Seite dass man die ganze Funktion system(); auch als string speichern kann. Der gespeicherte string ist dann die Ausgabe..
    In etwa so:
    Code:
    $ausgabe = system("wget [I]www.url.com[/I]");
    Gruß comfreak
     

Diese Seite empfehlen