Punktdateien der Shell
CIP Index Up Left Right

Startup und Konfiguration mit Punktdateien

Die folgenden Scripten werden von der Shell automatisch bearbeitet, wenn sie im Home des Benutzers liegen (und lesbar sind und ihm gehören). Sie dienen der Konfiguration der Shell und des Environments und enthalten dazu Kommandos, die von der Shell mit dem Kommando source eingelesen und ausgeführt werden. Sie brauchen also nicht ausführbar gemacht zu werden.

.cshrc (bzw. .tcshrc)

Wird bei jedem Shell-Start eingelesen (mit source), wenn die Shell nicht mit dem Flag -f gestartet wurde. In unserer Demo-Umgebung wird die Datei benutzt, um Shell- und Environment-Variable zu definieren. Environmentvariable werden von der Shell bei jedem Start eines Anwendungsprogramms an dieses weitergegeben, welches diese dann auslesen und zu seiner Konfiguration benutzen kann. Zu Näherem siehe die Manuals zu csh und tcsh bzw. die diversen Manuals zu den betreffenden Anwenderprogrammen.

Bevor diese Datei eingelesen wird, wird noch das Script /etc/cshrc (SGI), bzw. /etc/csh.login (HP) ausgeführt. Dort stehen die Minimaldefinitionen, mit denen man schon arbeiten kann, auch wenn man selber kein Startupscript in seinem Home hat.

.environ

Dies ist keine Standard-Punktdatei, sondern nur ein Teil des .cshrc Startupscripts, das der Übersichtlichkeit ausgelagert wurde. Hier sind alle Environment-Variablendefinitionen gesammelt. Es wird von .cshrc aus per source Kommando eingelesen. Da die Environmentvariablen jedoch an aus der Shell gestartete Kommandos weitergegeben werden, wird das Script nur beim ersten Shell-Start eingelesen. Dabei wird eine Variable ENV_SET gesetzt, die bei allen weiteren Shell-Starts signalisiert, daß die Umgebung schon gesetzt ist.

.login

Dies ist ein Shell-Script, das nur von login-Shells nach .cshrc per source eingelesen wird, d.h. nicht bei jedem Shell-Start sondern nur von der ersten Shell nach dem Einloggen oder z.B. solchen aus xterm mit der Option -ls (LoginShell). Hier wird meist die Terminaleinstellung korrigiert. Siehe auch im Kapitel Login-Shell.

.logout

Hier steht i.a. nur ein clear, damit der Bildschirm gelöscht und nachfolgenden Benutzern ein sauberer Arbeitsplatz hinterlassen wird (siehe Forderungen an Punktdateien). Das Script wird nur von Login-Shells nach dem logout-Kommando ausgeführt, d.h. per source eingelesen.

Nothilfe bei defektem Startup

Wenn man ungewollt seine Umgebung so verändert hat, das man sich nicht mehr einloggen kann (z.B. ein logout im .cshrc) kann man seine Startup-Dateien disabeln, d.h. das Einlesen durch die Shell unterbinden. Mehr dazu im Kapitel Repair-Login.