grandparents: PHP Konsole

Begrüsung,

ich habe eine virtuelle Konsole mit PHP gebaut. Man gibt einen Befehl ein dieser wird dann untersucht wenn er in Ordnung ist als shell-Befehl ausgeführt via shell_exec().

Nun mein Problem. ls und einige andere Befehle die eine Eingabe erwarten werden nicht angezeigt. Kann man dieses Problem lösen?

grandparents

  1. gudn tach!

    ls und einige andere Befehle die eine Eingabe erwarten werden nicht angezeigt.

    praezisiere das mal.

    meinst du "ls" wie es im beispiel 1956 der doku verwendet wird?

    prost
    seth

  2. Hi!

    Kann man dieses Problem lösen?

    Wenn du eine anständige Beschreibung lieferst, kann man das Problem höchstwahrscheinlich lösen.

    ls und einige andere Befehle die eine Eingabe erwarten werden nicht angezeigt.

    Bekommst du eine Fehlermeldung? Wenn ja, welche?
    Läuft das Script auf einem Unix-/Linux-System? Falls nicht, darfst du dich nicht wundern, wenn Kommandos wie "ls" nicht funktionieren.
    Windows kennt dieses Kommando nicht. Hier müßtest du "dir" benutzen.
    Läuft PHP im Safe-Mode? Wenn ja, dann funktioniert dein shell_exec() nicht.
    Außerdem könnte ich mir gut vorstellen, daß du nicht so einfach auf alle Programme zugreifen kannst, die dein Hoster auf seiner Kiste laufen hat.
    Die Nutzung von "ls" ist ja noch OK, aber du darfst dich nicht wundern, wenn du Programme wie "rm" o.a. nicht aufrufen kannst.

    Der Server läuft vielleicht in einer chroot-Umgebung.
    Außerdem ist der normale Webuser gewöhnlich unter einem Account mit so gut wie keinen Rechten angemeldet.
    Und auch PHP wird sicherlich nicht mit root-Rechten laufen...
    Da darfst du dich dann auch nicht wundern, wenn du nicht die Möglichkeit hast, alle Programme in /usr/bin zu nutzen...

    Was meinst du mit "andere Befehle die eine Eingabe erwarten"?
    "ls" erwartet doch keine Eingabe.

    Zeig uns doch mal deinen Code und liefer eine Fehlerbeschreibung, die keine Fragen mehr offenlässt.
    Und gib auch mal ein Beispiel, bei welchem Kommando "nichts funktioniert".

    Schöner Gruß,
    rob