Kapitel 16 Arbeiten mit Dateien und Verzeichnissen

Wenn Sie mit Linux noch nicht allzu vertraut sind - und für die meisten Benutzer von Computern ist der Umgang mit Linux eine ganz neue Erfahrung - sind Sie beim Arbeiten mit Ihrem neuen Betriebssystem am Anfang vermutlich noch etwas unsicher.

Lehnen Sie sich erst einmal in aller Ruhe zurück. Wenn Sie bereits mit anderen Betriebssystemen Erfahrungen gesammelt haben, werden Sie auch mit Linux schnell zurechtkommen. In gewisser Hinsicht ähnelt das Arbeiten mit Linux dem Autofahren in einem anderen Land: Die grundlegenden Regeln stimmen in allen Ländern überein, doch im Detail gibt es zahlreiche Unterschiede.

In diesem Kapitel werden wir Ihnen nun einige der "Verkehrsregeln" vorstellen, die Sie beim Umgang mit Linux beachten sollten.

Eine Komponente Ihres neuen Betriebssystems spielt dabei eine ganz besondere Rolle: die Shell. Die Shell hatten wir ja schon mehrfach erwähnt - beispielsweise im Zusammenhang mit dem Shell Prompt oder bash.

Doch jetzt ist es an der Zeit, dass Sie sich mit diesem unverzichtbaren Tool etwas eingehender auseinander setzen. Zunächst jedoch ein paar Anmerkungen zur Entwicklungsgeschichte der Shell…

Wissenswertes über die Shell

In der guten alten Zeit (hiermit sind die sechziger Jahre gemeint), als Dennis Ritchie und Ken Thompson bei AT&T an der Entwicklung von UNIXTM arbeiteten, wollten sie für die Bedienung ihres neuen Systems auch eine geeignete Benutzerschnittstelle zur Verfügung stellen.

Die damaligen Betriebssysteme wurden mit Befehlsinterpretern ausgeliefert, deren Aufgabe darin bestand, die von den Benutzern eingegebenen Befehle in eine dem Computer verständliche Form umzuwandeln.

Doch Ritchie und Thompson gaben sich damit nicht zufrieden und waren auf der Suche nach einer verbesserten Benutzerschnittstelle, deren Funktionen über die der damaligen Befehlsinterpreter hinausgingen.

Und hier kommt die Bourne Shell ins Spiel (auch unter der Abkürzung sh bekannt), die von S.R. Bourne entwickelt wurde und die von den Entwicklern von UNIX geforderten Möglichkeiten bot.

Seit der Entstehung der Bourne Shell wurden noch weitere Shells entwickelt, so beispielsweise die C-Shell (csh) und die Korn-Shell (ksh).

Als die Free Software Foundation auf der Suche nach einer frei verfügbaren Shell war, begannen Entwickler mit der Arbeit an einer neuen Shell, die auf den Möglichkeiten der Bourne Shell aufbaute, zugleich aber Funktionen weiterer Shells bot, die zum damaligen Zeitpunkt verfügbar waren.

Das Ergebnis war schließlich die Bourne Again Shell - oder bash.

Das Wort bash haben Sie ja bei Ihrer Arbeit mit Linux sicher schon gelesen, wenn Sie beispielsweise einen Befehl am Shell Prompt falsch eingegeben haben (und die Meldung bash: einbefehl: command not found ausgegeben wurde).

Auch in Kapitel 15, als wir uns mit der Umleitung und Weiterleitung von Daten mit Pipes beschäftigt haben, wurde die bash-Shell mit ihren zahlreichen Möglichkeiten schon kurz erwähnt.

TipMehr über die bash
 

Wenn Sie mehr über bash erfahren möchten, müssen Sie lediglich die man-Seite zu bash lesen. Geben Sie hierzu am Shell Prompt man bash ein. Als Alternative können Sie die Datei auch als Textdatei speichern, indem Sie man bash | col -b > bash.txt eingeben. Diese Textdatei können Sie mit einem Editor wie pico lesen oder mit einem Pager wie less auf dem Bildschirm anzeigen. Sie können die Datei auch mit dem Befehl man bash | col -b | lpr drucken. Allerdings ist diese man-Seite nicht gerade klein... Wenn Sie zusätzliche Informationen benötigen, empfiehlt sich ein Buch wie Learning the bash Shell von Cameron Newham und Bill Rosenblatt, das bei O'Reilly & Associates erschienen ist.

Obwohl Ihr System mit mehreren verschiedenen Shells ausgeliefert wurde, handelt es sich bei bash um die standardmäßig verwendete Shell von Red Hat Linux.

Sie können sich bash wie eine Art persönlichen Assistenten vorstellen, der sich ständig Notizen macht, um Ihre Wünsche sofort in die Tat umzusetzen. Dieser Assistent verwendet hierfür bestimmte "Notizzettel", um Ihre Arbeitsumgebung nach Ihren Vorstellungen einzurichten.

Diese von bash angelegten Notizzettel werden als Umgebungsvariablen bezeichnet.

Im Zusammenhang mit Ihrer Shell wird der Begriff "Umgebung" in ähnlicher Weise wie im Alltagsleben verwendet, wo Sie alle benötigten Gegenstände wie Papier, Stifte und sonstige Büromaterialien nach bestimmten Kriterien angeordnet haben. Sie wissen, wo Sie sich Ihre Aktenordner befinden und wie Sie mit ihnen umgehen müssen.

Das Gleiche gilt auch für die bash und deren Umgebung. Die bash Shell beruht genauso wie Ihr Arbeitszimmer auf gewissen Ordnungsprinzipien. Beispielsweise existieren für die Aufbewahrung der Akten in Ihrem Büro in der gleichen Weise Konventionen wie für das Bereitstellen bestimmter Befehle durch bash.

Dies ist der Gedanke, der auch Umgebungsvariablen zugrundeliegt.

Solange Ihr Assistent über die richtigen "Notizzettel" verfügt, kann er Ihre Eingaben rasch umsetzen.

Schauen wir uns nun die Umgebungsvariablen etwas näher an. Geben Sie am Shell Prompt folgenden Befehl ein:

env
	  

Ihre bash Shell verwendet ganz schön viele Notizen, nicht wahr?

Jeder einzelne Eintrag dient der bash Shell für das individuelle Einrichten Ihrer Umgebung.

Zu den wichtigsten Umgebungsvariablen zählt die Variable PATH, in der festgelegt wird, wie der Standardpfad lautet.

Die Umgebungsvariable PATH für Ihren Benutzeraccount neuerbenutzer sieht vermutlich ähnlich aus wie folgende Zeile:

PATH=/usr/local/bin:/usr/X11R6/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/neuerbenutzer/bin
	  

Dies mag etwas unübersichtlich wirken, doch der Befehl PATH ist beim Suchen nach Programmen eine große Hilfe für Ihre Shell.

TipStandardeinstellungen für die Variable PATH
 

Erinnern Sie sich noch an den Hinweis auf FHS (Filesystem Hierarchy Standard) in Abschnitt namens Das Dateisystem genauer betrachtet in Kapitel 15? Die Angaben unter PATH werden gemäß diesem Standard eingerichtet, und auch die verschiedenen Programme werden in Übereinstimmung mit FHS in bestimmten Verzeichnissen installiert. Dies hat zur Folge, dass bash mit Hilfe der Angaben unter PATH praktisch jedes Programm automatisch findet (zumindest dann, wenn bei der Installation FHS berücksichtigt wurde).