Um eine bestimmte Datei bzw. ein bestimmtes Verzeichnis anzusprechen, müssen Sie den Pfad angeben, der zu dem betreffenden Verzeichnis bzw. der betreffenden Datei führt. Wie Sie vielleicht bereits von MS DOS oder Mac OS wissen, gibt es zwei Methoden, einen Pfad anzugeben:
Geben Sie den vollständigen Pfad vom root-Verzeichnis zur jeweiligen Datei bzw. zum jeweiligen Verzeichnis ein.
Geben Sie einen Pfad zur jeweiligen Datei bzw. zum jeweiligen Verzeichnis mit dem aktuellen Verzeichnis als Ausgangspunkt ein. Das bedeutet, dass Sie die Ebenen angeben, um die Sie vom aktuellen Verzeichnis ausgehend in der Struktur des Dateisystems nach oben oder unten navigieren müssen, um das Zielverzeichnis bzw. die Zieldatei zu erreichen.
Pfade enthalten Dateinamen und/oder Verzeichnisse, die durch Schrägstriche getrennt sind. Absolute Pfade beginnen immer mit einem Schrägstrich. Relativen Pfaden ist kein Schrägstrich vorangestellt, aber sie können einen oder zwei Punkte aufweisen.
Bei der Eingabe von Kommandos können Sie ganz nach Belieben/Eingabeaufwand eine der beiden Methoden zur Pfadangabe verwenden, beide führen zum selben Ergebnis. Sie wechseln das Verzeichnis mit dem Befehl cd und der Pfadangabe zum gewünschten Verzeichnis.
Leerzeichen in Datei- oder Verzeichnisnamen | |
---|---|
Wenn ein Datei- oder Verzeichnisname ein Leerzeichen enthält, geben Sie entweder vor dem Leerzeichen ein Escape-Zeichen (umgekehrter Schrägstrich |
Bei der Angabe von Pfaden können Ihnen die folgenden „Abkürzungen “ viel Schreibarbeit ersparen:
Die Tilde ( ~
) ist eine Abkürzung für Home-Verzeichnisse. Um beispielsweise den Inhalt Ihres Home-Verzeichnisses aufzulisten, verwenden Sie ls ~
. Wenn Sie den Inhalt des Home-Verzeichnisses von einem anderen Benutzer auflisten möchten, geben Sie ls ~
ein. (Natürlich ist dies nur möglich, wenn Sie berechtigt sind, den Inhalt anzuzeigen. Siehe Abschnitt 7.3, „Dateizugriffsberechtigungen“). Beispielsweise würde ls ~tux den Inhalt des Home-Verzeichnisses von Benutzer benutzername
tux
auflisten. Sie können die Tilde auch als Abkürzung für Home-Verzeichnisse verwenden, wenn Sie in einer Netzwerkumgebung arbeiten und Ihr Home-Verzeichnis nicht unbedingt /home
heißt, sondern einem anderen Verzeichnis im Dateisystem zugeordnet ist.
Sie können von jeder Stelle im Dateisystem zu Ihrem Home-Verzeichnis wechseln, indem Sie cd ~
eingeben, oder sogar noch kürzer, indem Sie einfach cd ohne weitere Optionen eingeben.
Bei Verwendung von relativen Pfaden geben Sie das aktuelle Verzeichnis mit einem Punkt ( .
). Dies ist besonders nützlich für Befehle wie cp oder mv, mit denen Sie Dateien oder Verzeichnisse kopieren bzw. verschieben können.
Die nächsthöhere Ebene in der Struktur wird durch zwei Punkte dargestellt (..
). Sie wechseln in das übergeordnete Verzeichnis Ihres aktuellen Verzeichnisses, indem Sie cd .. eingeben, oder zwei Ebenen über das aktuelle Verzeichnis, indem Sie cd ../.. eingeben usw.
Probieren Sie Ihr Wissen in den folgenden Beispielen aus. Sie behandeln grundlegende Aufgaben, die Sie mit Bash an Dateien oder Ordnern ausführen können.
Angenommen, Sie möchten eine Datei aus Ihrem Home-Verzeichnis in ein Unterverzeichnis von /tmp
kopieren:
Erstellen Sie ausgehend von Ihrem Home-Verzeichnis ein Unterverzeichnis in /tmp
:
Geben Sie ein:
mkdir /tmp/test
mkdir steht für „make directory“ (Verzeichnis anlegen). Mit diesem Befehl erstellen Sie ein neues Verzeichnis mit dem Namen test
im Verzeichnis /tmp.
In diesem Fall verwenden Sie einen absoluten Pfad, um das Verzeichnis test
zu erstellen.
Geben Sie nun das Folgende ein, um zu überprüfen, was geschehen ist:
ls -l /tmp
Das neue Verzeichnis test
sollte nun in der Inhaltsliste des Verzeichnisses /tmp
angezeigt werden.
Wechseln Sie in das neu erstellte Verzeichnis mit
cd /tmp/test
Erstellen Sie nun eine neue Datei in Ihrem Home-Verzeichnis und kopieren Sie sie in das Verzeichnis /tmp/test
. Verwenden Sie für diese Aufgabe einen relativen Pfad.
Überschreiben von bestehenden Dateien | |
---|---|
Bevor Sie eine Datei kopieren, verschieben oder umbenennen, prüfen Sie, ob Ihr Zielverzeichnis bereits eine Datei mit demselben Namen enthält. Wenn ja, ändern Sie ggf. einen der Dateinamen oder verwenden Sie cp bzw. mv mit Optionen wie |
Geben Sie zum Auflisten des Inhalts Ihres Home-Verzeichnisses Folgendes ein:
ls -l ~
Es sollte standardmäßig ein Unterverzeichnis mit dem Namen Dokumente
enthalten. Wenn nicht, erstellen Sie dieses Unterverzeichnis mit dem Befehl mkdir, den Sie bereits kennen:
mkdir ~/Documents
Geben Sie ein:
touch ~/Documents/myfile.txt
Mit diesem Befehl erstellen Sie eine neue, leere Datei mit dem Namen myfile.txt
im Verzeichnis Dokumente
.
Gewöhnlich aktualisiert der Befehl touch das Änderungs- und Zugriffsdatum für eine bestehende Datei. Wenn Sie touch mit einem Dateinamen verwenden, der im Zielverzeichnis nicht existiert, wird eine entsprechende neue Datei angelegt.
Geben Sie ein:
ls -l ~/Documents
Die neue Datei sollte in der Inhaltsliste angezeigt werden.
Geben Sie ein:
cp ~/Documents/myfile.txt .
Vergessen Sie nicht den Punkt am Ende.
Dieser Befehl weist Bash an, direkt in Ihr Home-Verzeichnis zu wechseln und myfile.txt
aus dem Unterverzeichnis Dokumente
in das aktuelle Verzeichnis /tmp/test
zu kopieren, ohne den Namen der Datei zu ändern.
Prüfen Sie das Ergebnis, indem Sie Folgendes eingeben:
ls -l
Die Datei myfile.txt
sollte nun in der Inhaltsliste für /tmp/test
angezeigt werden.
Angenommen, Sie möchten nun myfile.txt
in tuxfile.txt
umbenennen. Zum Schluss beschließen Sie, die umbenannte Datei und das Unterverzeichnis test
zu entfernen.
Geben Sie zum Umbenennen der Datei den folgenden Befehl ein:
mv myfile.txt tuxfile.txt
Geben Sie das Folgende ein, um zu überprüfen, was geschehen ist:
ls -l
Anstelle von myfile.txt
sollte nun tuxfile.txt
in der Inhaltsliste angezeigt werden.
mv steht für move
(verschieben) und wird mit zwei Optionen verwendet: Mit der ersten Option wird die Quelle des Vorgangs, mit der zweiten Option das Ziel angegeben. Sie können mv für Folgendes verwenden:
Umbenennen einer Datei oder eines Verzeichnisses,
Verschieben einer Datei oder eines Verzeichnisses an eine andere Position oder
Ausführen beider Aktionen in einem Schritt.
Sie entscheiden, dass Sie die Datei nicht mehr brauchen, und löschen sie, indem Sie Folgendes eingeben:
rm tuxfile.txt
Bash löscht die Datei ohne jegliche Rückfrage.
Wechseln Sie mit cd .. um eine Ebene nach oben und prüfen Sie mit
ls -l test
ob das Verzeichnis test
nun leer ist.
Wenn ja, können Sie das Verzeichnis test
entfernen, indem Sie folgendes eingeben:
rmdir test