* Bernd Tannenbaum schrieb am 09.Jul.2003:
Moin zusammen,
ich bastel immer noch an ein paar kleinen Scripten rum. Dabei hab ich mir inzwischen angewöhnt für Befehle immer den kompletten Pfad zu schreiben. Also "/bin/cp" anstatt nur "cp" zum Beispiel. Nun wollte ich ein "cd" ausführen lassen und hab danach gesucht.
Etwas überrascht stellte ich fest, das cd offenbar gar nicht im Pfad liegt.
cd ist ein shellinterner Befehl. Es wäre mit einem Kommando auch gar nicht zu machen. Es gibt noch eine Reihe anderer shellinterner Befehle, wie shift oder exit, die wie cd gar nicht anders zu realisieren sind, und es gibt darüber hinaus noch eine Menge Befehle, wie test, echo und pwd, die es sowohl als externen Befehl, als auch als shell builtin geben. Das kann man sehen, wenn man type Befehl macht. type sagt, ob es ein shellbuiltin ist, odre ein Alias, eine Shellfunktion, ein Link oder eine Ausführbare Datei und gibt den Pfad dazu an. Mit type -a Befehl wird nicht nur die erste Möglichkeit genommen, sondern alle. type selber ist auch ein shellbuiltin. shellbuiltins sind natürlich schneller als externe Programme, daher sei vorsichtig, wenn Du den vollen Pfad angibst. Und Protabel wird das ganze dadurch auch nicht unbedingt. Bernd -- ROTFL = Rolling On The Floor, Laughing = Auf dem Boden wälzen, lachend. SCNR = Sorry, Could Not Resist = Sorry, Ich konte nicht widerstehen. AFAIK = As Far As I Know = So weit ich weis|BTW = By The Way = Nebenbei bemerkt IMHO = In My Humble Opinion = meiner bescheidenen Meinung nach |Zufallssig. 9