Unix-Linux, Eine Einführung von Wolfgang Paulina (de)
Unix-Linux, Eine Einführung von Wolfgang Paulina (de)
Unix-Linux, Eine Einführung von Wolfgang Paulina (de)
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
6. Die csh/tcsh - Shell<br />
Unter einer shell wird allgemein ein Kommando-Interpreter verstan<strong>de</strong>n. Wie bei an<strong>de</strong>ren Betriebssystemen<br />
übernimmt dieser Interpreter die Verarbeitung <strong>de</strong>r eingegebenen Kommandos. Auf <strong>Unix</strong>/<strong>Linux</strong>-Systemen<br />
sind in <strong>de</strong>r Regel folgen<strong>de</strong> shells anzutreffen: sh (Bourne-shell), bash (Bourne-again-shell), ksh (Kornshell),<br />
jsh (Job-Control-shell), csh (c-shell) und tcsh ( eine Variante <strong>de</strong>r csh, die vorzugsweise an <strong>de</strong>r<br />
Uni Regensburg eingesetzt wird).<br />
Was ist <strong>de</strong>r Grund für diese Menge verschie<strong>de</strong>ner shell-Varianten? So wie bei <strong>de</strong>n Editoren besitzt auch<br />
je<strong>de</strong> shell gewisse Stärken, aber auch einige Schwächen. Es hängt vom gefor<strong>de</strong>rten Einsatz ab, welcher<br />
shell man <strong>de</strong>n Vorzug gibt. Es gibt shells, die sich eher für die interaktive Arbeit eignen (tcsh, bash),<br />
an<strong>de</strong>re sind dagegen für das Schreiben <strong>von</strong> shell-Prozeduren besser geeignet (sh, ksh).<br />
Da an <strong>de</strong>r Uni Regensburg die gesamte Benutzerumgebung auf die tcsh bzw. csh abgestimmt wur<strong>de</strong>,<br />
wer<strong>de</strong>n daher diese shells intensiver behan<strong>de</strong>lt. Hinzu kommt, dass viele Mechanismen, die hier betrachtet<br />
wer<strong>de</strong>n, auch in an<strong>de</strong>ren shell-Varianten in gleicher o<strong>de</strong>r in ähnlicher Weise anzutreffen sind.<br />
6.1. Kommandowie<strong>de</strong>rholung<br />
Alle Kommandos, die interaktiv eingegeben wer<strong>de</strong>n, wer<strong>de</strong>n in einer sog. History-Liste gesichert. Auf diese<br />
Liste kann zurückgegriffen wer<strong>de</strong>n, um bestimmte Kommandos wie<strong>de</strong>rholt aufzurufen, ohne das gesamte<br />
Kommando nochmals eintippen zu müssen. Beim Login wird außer<strong>de</strong>m eine Datei namens .history<br />
angelegt, die die Speicherung <strong>de</strong>r History-Liste übernimmt. So stehen die Kommados sogar nach einem<br />
Logout beim nächsten Login wie<strong>de</strong>r zur Verfügung. Die History-Liste kann man mit <strong>de</strong>m Kommando<br />
history ansehen.<br />
rechner> history<br />
rechner> history | tail -5<br />
Ausgabe <strong>de</strong>r gesamten History-Liste<br />
Ausgabe <strong>de</strong>r letzten 5 Kommandos<br />
History-Kommandos<br />
Die Referenz auf ein in <strong>de</strong>r History-Liste stehen<strong>de</strong>s Kommando erfolgt mit einem vorangestellten Rufezeichen<br />
! Dies ist auch <strong>de</strong>r Grund dafür, dass das Rufezeichen bei an<strong>de</strong>rweitiger Verwendung maskiert wer<strong>de</strong>n<br />
muss.<br />
rechner> !!<br />
rechner> !17<br />
rechner> !-4<br />
rechner> !vi<br />
das zuletzt eingegebene Kommando wird ausgeführt<br />
das Kommando Nr. 17 in <strong>de</strong>r History-Liste wird ausgeführt<br />
das viertletzte Kommando wird ausgeführt<br />
<strong>de</strong>r letzte vi-Aufruf wird ausgeführt<br />
Wie oben zu sehen, kann die Referenz auf ein Kommando <strong>de</strong>r History-Liste entwe<strong>de</strong>r mit <strong>de</strong>r Nummer<br />
o<strong>de</strong>r mit einem Namen erfolgen. Beim Bezug auf einen Kommandonamen wird das letzte Kommando<br />
genommen.