Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...
Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...
Linux Essentials//Die Einsteiger-Zertifizierung des LPI - Linup Front ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
6.2 Kommandos für Verzeichnisse 81<br />
Jeder Prozess in einem <strong>Linux</strong>-System hat ein »aktuelles Verzeichnis« (engl. cur- aktuelles Verzeichnis<br />
rent directory, auch working directory, »Arbeitsverzeichnis«). Dateinamen werden in<br />
diesem Verzeichnis gesucht; brief.txt ist also eine bequeme Abkürzung für »die<br />
Datei brief.txt im aktuellen Verzeichnis«, und susi/brief.txt« steht für »die Datei<br />
brief.txt im Verzeichnis susi, das im aktuellen Verzeichnis steht«. Solche Namen,<br />
die vom aktuellen Verzeichnis ausgehen, nennen wir »relative Pfadnamen« (engl. relative Pfadnamen<br />
relative path names).<br />
B<br />
B<br />
Sie können ganz einfach absolute von relativen Pfadnamen unterscheiden:<br />
Ein Pfadname, der mit »/« anfängt, ist absolut; alle anderen Pfadnamen sind<br />
relativ.<br />
Das aktuelle Verzeichnis »vererbt« sich vom Elterprozess auf den Kindprozess.<br />
Wenn Sie also aus einer Shell heraus eine neue Shell (oder ein anderes<br />
Programm) starten, dann hat diese neue Shell dasselbe aktuelle Verzeichnis<br />
wie die Shell, aus der Sie sie gestartet haben. Sie können innerhalb der neuen<br />
Shell mit cd in ein anderes Verzeichnis wechseln, aber das aktuelle Verzeichnis<br />
der alten Shell ändert sich dadurch nicht – wenn Sie die neue Shell<br />
verlassen, dann sind Sie wieder im (unveränderten) aktuellen Verzeichnis<br />
der alten Shell.<br />
In relativen (oder auch absoluten) Pfadnamen gibt es zwei bequeme Abkür- Abkürzungen<br />
zungen: Der Name »..« steht für das dem jeweiligen Verzeichnis im Verzeichnisbaum<br />
übergeordnete Verzeichnis – im Falle von /home/hugo also beispielsweise<br />
/home. Das erlaubt Ihnen oftmals, bequemer als über absolute Pfadnamen auf Dateien<br />
Bezug zu nehmen, die aus der Sicht <strong>des</strong> aktuellen Verzeichnisses in einem<br />
»Seitenast« <strong>des</strong> Verzeichnisbaums zu finden sind. Nehmen wir an, /home/hugo hätte<br />
die Unterverzeichnisse briefe und romane. Mit briefe als aktuellem Verzeichnis<br />
könnten Sie sich über den relativen Pfadnamen ../romane/werther.txt auf die Datei<br />
werther.txt im Verzeichnis romane beziehen, ohne den umständlichen absoluten<br />
Namen /home/hugo/romane/werther.txt angeben zu müssen.<br />
<strong>Die</strong> zweite Abkürzung ergibt keinen ganz so offensichtlichen Sinn: Der Name<br />
».« in einem Verzeichnis steht immer für das Verzeichnis selbst. Es leuchtet nicht<br />
unmittelbar ein, wofür man eine Methode braucht, auf ein Verzeichnis zu verweisen,<br />
in dem man sich bereits befindet, aber es gibt Situationen, wo das sehr<br />
nützlich ist. Zum Beispiel wissen Sie vielleicht schon (oder können in Kapitel 9<br />
nachschauen), dass die Shell die Programmdateien für externe Kommandos in<br />
den Verzeichnissen sucht, die in der Umgebungsvariablen PATH aufgelistet sind.<br />
Wenn Sie als Softwareentwickler ein Programm, nennen wir es mal prog, aufrufen<br />
wollen, das (a) in einer Datei im aktuellen Verzeichnis steht und (b) dieses aktuelle<br />
Verzeichnis nicht in PATH zu finden ist (aus Sicherheitsgründen immer eine gute<br />
Idee), dann können Sie mit<br />
$ ./prog<br />
die Shell trotzdem dazu bringen, Ihre Datei als Programm zu starten, ohne dass<br />
Sie einen absoluten Pfadnamen angeben müssen.<br />
B<br />
Als <strong>Linux</strong>-Benutzer haben Sie ein »Heimatverzeichnis«, in dem Sie direkt<br />
nach dem Anmelden am System landen. Welches das ist, bestimmt der Systemadministrator<br />
beim Anlegen Ihres Benutzerkontos, aber es heißt normalerweise<br />
so wie Ihr Benutzername und ist unterhalb von /home zu finden –<br />
etwas wie /home/hugo für den Benutzer hugo.<br />
6.2 Kommandos für Verzeichnisse<br />
6.2.1 Das aktuelle Verzeichnis: cd & Co.<br />
In der Shell können Sie mit dem Kommando cd das aktuelle Verzeichnis wechseln: Verzeichnis wechseln<br />
Geben Sie einfach das gewünschte Verzeichnis als Parameter an.<br />
Copyright © 2012 <strong>Linup</strong> <strong>Front</strong> GmbH