UNIX Grundbefehle |
Beispielsweise legen Sie ein Verzeichnis namens spielwiese (mkdir spielwiese) an und lassen es sich hinterher mit ls spielwiese anzeigen, um zu sehen, ob es noch da ist. Sie sehen - nichts. Der Grund liegt darin, dass ls spielwiese nicht selbst anzeigt, sondern seinen Inhalt. Da dieser bisher leer ist, wird die leere Liste angezeigt. Es sieht also so aus, als wäre spielwiese verschwunden. Mit ls -ld spielwiese kann man sie wiederum sehen.
-rwxr----- 1 arnold users 13654 Jan 17 04:41 a.out drwxr-x--- 2 arnold users 4096 Mär 6 23:35 awk -rwxr-xr-x 1 arnold users 13856 Feb 8 10:48 copy -rw-r--r-- 1 arnold users 175 Feb 8 10:48 copy.c drwxr-xr-x 2 arnold users 4096 Jan 13 12:37 dir -rw-rw-r-- 1 arnold users 98 Apr 13 13:55 doppel.c -rwxr-xr-x 1 arnold users 13516 Feb 8 21:25 env -rw-r--r-- 1 arnold users 165 Feb 8 21:25 env.c drwx------ 2 arnold users 4096 Feb 21 14:13 ipc drwxr-xr-x 2 arnold users 4096 Feb 13 13:51 make -rwxr-xr-x 1 arnold users 13489 Apr 11 21:34 moin -rw-r--r-- 1 arnold users 60 Apr 13 13:55 moin.c |
Der Dateityp wird in der ersten Spalte angezeigt. Dabei steht ein Bindestrich für eine normale Datei, ein d für Verzeichnisse, ein l für einen symbolischen Link. Die Berechtigung ist in den nächsten neun Zeichen angezeigt und besteht aus r für read (engl. lesen), w für write (engl. schreiben) und x für execute (engl. ausführen). Die Links zeigen die Anzahl der Verweise auf die Datei. Als Eigentümer wird die Kennung des Besitzers angegeben. Benutzer können zu Gruppen gehören und so können für mehrere Benutzer Berechtigungen auf einzelne Dateien festgelegt werden. Der Zeitpunkt der letzten Änderung wird als Uhrzeit dargestellt, wenn die Änderung am gleichen Tag war oder als Datum, wenn die Änderung bereits länger her ist.
Der Dateiname kann unter UNIX relativ frei gestaltet werden. Er darf keinen Schrägstrich enthalten, da dieser als Verzeichnistrenner interpretiert wird. Enthält der Dateiname Sonderzeichen, die die Shell interpretiert, muss man den Namen bei Benutzung von der Kommandozeile in Anführungszeichen setzen. Alternativ kann man auch einen Backslash vor das Sonderzeichen stellen. Für die Shell bedeutet der Backslash, dass sie das folgende Zeichen nicht interpretieren, sondern einfach durchreichen soll.
Die Option -R zeigt eine Liste aller Unterverzeichnisse mit ihren Unterverzeichnissen.
| Option | Wirkung |
|---|---|
| -l | zeigt alle Informationen über die Datei |
| -a | zeigt auch die Dateien, die mit einem Punkt beginnen |
| -d | zeigt das Verzeichnis und nicht dessen Inhalt |
| -t | sortiert nach letzter Änderung. Neueste Dateien kommen zuerst |
| -r | dreht die Sortierfolge um |
| -R | zeigt alle Unterverzeichnisse |
ls hat erheblich mehr Optionen. Wer sie gern alle kennen lernen möchte: man ls.
cp Optionen Quelldateien Ziel |
Um mehrere Dateien zu erfassen, kann man sie aufzählen oder durch einen Stern auswählen. Wichtig ist, dass der zuletzt angegebene Name von cp immer als Ziel interpretiert wird. Ein Verzeichnis als Quelle wird von cp einfach übergangen.
Auch die Möglichkeit, mit der Option -r komplette Verzeichnisbäume zu kopieren, ist nicht auf allen Systemen verfügbar. Darum wird das Kopieren kompletter Verzeichnisbäume unter Beibehaltung aller Eigenschaften auf älteren Systemen normalerweise mit dem Kommando tar realisiert, das an anderer Stelle betrachtet wird, siehe S.\ \gpSeitenverweis{tarcopy}.
Welche Möglichkeiten cp auf Ihrem System sonst noch bietet, erfahren Sie wieder mit man cp.
Will man einen kompletten Verzeichnisbaum löschen, verwendet man die Option
-r. Damit geht rm rekursiv den gesamten Baum durch und
entfernt alle enthaltenen Dateien und Verzeichnisse.
Dateien verschieben oder umbenennen: mv
mv verschiebt und benennt um
Mit dem Befehl mv kann man einer Datei einen anderen Namen geben oder
mehrere Dateien in ein anderes Verzeichnis schieben. In den meisten Fällen
fasst mv die Dateien selbst gar nicht an, sondern verändert nur die
Einträge in den Verzeichnissen. Darum wird das Verschieben selbst großer
Dateien erstaunlich schnell erledigt. Eine Ausnahme gilt nur, wenn Ursprung
und Ziel auf verschiedenen Dateisystemen liegen, beispielsweise auf
verschiedenen Festplatten. Dann wird zunächst kopiert, dann das Original
gelöscht und zu guter Letzt werden die Eigenschaften der Originale übernommen.
Dateien löschen: rm
rm -i löscht nur nach Rückfrage
Der Befehl rm löscht Dateien. Dies ist unwiderruflich und darum ist
es ganz gut, dass es die Option -i gibt. Dann fragt rm bei
jeder einzelnen Datei nach, ob sie wirklich entfernt werden soll.
Verzeichnisbefehle: mkdir, rmdir, cd und pwd
\gpIndex{Verzeichnis!anlegen}
Um Dateien zu ordnen und zu gruppieren, legt man Verzeichnisse an. Der Befehl
zum Erzeugen von
Verzeichnissen lautet mkdir. Die Abkürzung md für mkdir gibt
es unter UNIX nicht. Wer sie vermisst, kann sie sich aber als alias definieren.
cd wechselt das Verzeichnis
Der Anwender befindet sich immer in einem Verzeichnis. Mit cd
wechselt er sein Arbeitsverzeichnis. cd ohne Parameter wechselt in
das Heimatverzeichnis. Das Heimatverzeichnis ist das Verzeichnis, in dem er
sich nach dem Anmelden zunächst befindet.
pwd zeigt den aktuellen Pfad an
Um zu ermitteln, in welchem Verzeichnis man sich aktuell befindet, verwendet
man den Befehl pwd (print work directory).
rmdir löscht leere Verzeichnisse
Um ein Verzeichnis wieder verschwinden zu lassen, verwendet man rmdir
(remove directory).
Allerdings kann man mit rmdir nur leere Verzeichnisse löschen und
auch nur solche, die
derzeit nicht in Verwendung sind. In Verwendung sind auch Verzeichnisse, in
denen noch eine Sitzung von einem anderen Terminal stattfindet. Man darf
nämlich nicht einfach jemand anderem das Verzeichnis unter den Füßen wegziehen.
Leider ist es nicht immer ganz leicht, herauszufinden, wer mit welchem Prozess
dort gerade arbeitet. Hier helfen die Befehle fuser und ps
und auch lsof.
Diese Seite basiert auf Inhalten aus dem Buch
Arnold Willemer: Wie werde ich UNIX-Guru
Verlagsrechte bei galileo computing
| Homepage |
(C) Copyright 2002 Arnold Willemer
|