Befehl "ls"
Zweck
Zeigt den Inhalt eines Verzeichnisses an.
Syntax
Inhalt des Verzeichnisses oder Namen der Datei anzeigen
ls [ -1 [ -A ] [ -C ] [ -E ] [ -F ] [-H | -L ] [ -N ] [ -R ] [ -S ] [ -X] [ -a ] [ -b ] [ -c ] [ -d ] [ -e ] [ -f ] [ -g ] [ -i ] [-k] [ -l ] [ -m [ -n ] [ -o ] [ -p ] [ -q ] [ -r ] [ -s ] [ -t ] [ -u ] [ -U ] [ -x ] [ Datei ...]
Inhalt des Verzeichnisses anzeigen
ls -f [ -C ] [ -d ] [ -i ] [ -m ] [ -s ] [ -X] [ -x ] [ -1 ] [ -U ] [ Verzeichnis ...
Beschreibung
Der Befehl ls schreibt den Inhalt jedes angegebenen Parameters Verzeichnis oder den Namen jedes angegebenen Parameters Datei zusammen mit allen anderen Informationen, die Sie mit den Flags anfordern, in die Standardausgabe. Wenn Sie keinen Parameter Datei oder Verzeichnis angeben, zeigt der Befehl ls den Inhalt des aktuellen Verzeichnisses an.
Die Angabe von mehr als einer der Optionen in den sich gegenseitig ausschließenden Paaren wird nicht als Fehler betrachtet. Die letzte in jedem Paar angegebene Option bestimmt das Ausgabeformat.
Standardmäßig zeigt der Befehl ls alle Informationen in alphabetischer Reihenfolge nach Dateiname an. Die Sortierfolge wird durch die Umgebungsvariable LANG oder LC_COLLATE bestimmt.
Wenn der Befehl ls den Inhalt eines Verzeichnisses anzeigt, werden keine Einträge für Dateien angezeigt, deren Namen mit beginnen. (Punkt) es sei denn, Sie verwenden das Flag -a oder -A . Wenn der Befehl von Root ausgeführt wird, verwendet er standardmäßig das Flag -A.
Es gibt drei Möglichkeiten, die Ausgabe zu formatieren:
- Einen Eintrag pro Zeile auflisten
- Einträge in mehreren Spalten durch Angabe des Flags -C oder -x auflisten. Das Flag -C ist bei der Ausgabe auf einem TTY das Standardformat. Der Befehl ls zeigt eine einspaltige Ausgabe an, wenn Datei- oder Verzeichnisnamen zu lang sind.
- Einträge durch Angabe des Flags -m in einer durch Kommas getrennten Reihe auflisten
Um die Anzahl der Zeichenpositionen in der Ausgabezeile zu bestimmen, verwendet der Befehl ls die Umgebungsvariable COLUMNS. Wenn diese Variable nicht gesetzt ist, erhält der Befehl den aktuellen Spaltenwert der Anzeige. Wenn der Befehl ls die Anzahl der Zeichenpositionen mit keiner dieser Methoden bestimmen kann, wird ein Standardwert von 80 verwendet.
| Element | Beschreibung |
|---|---|
| E | Gibt an, dass eine Datei über erweiterte Attributinformationen (EA) verfügt. Der EA einer Datei wird mit dem Befehl getea angezeigt. |
| - | Gibt an, dass eine Datei keine erweiterten Attributinformationen enthält. |
| e | Zeigt an, dass eine Datei verschlüsselt ist. |
Die Verschlüsselung hat Vorrang vor dem Vorhandensein der Zugriffssteuerungslisten (Access Control Lists, ACLs) und anderer EAs.
Der mit den Flags -e und -l angezeigte Modus wird wie folgt interpretiert:
Wenn das erste Zeichen ist:
| Element | Beschreibung |
|---|---|
| d | Wenn dieses Zeichen das erste Zeichen ist, ist der Eintrag ein Verzeichnis. |
| b | Wenn dieses Zeichen das erste Zeichen ist, ist der Eintrag eine blockorientierte Gerätedatei. |
| c | Wenn dieses Zeichen das erste Zeichen ist, ist der Eintrag eine zeichenorientierte Gerätedatei. |
| l | Wenn dieses Zeichen das erste Zeichen ist, ist der Eintrag ein symbolischer Link und es wurde entweder das Flag -N angegeben oder der symbolische Link zeigt nicht auf eine vorhandene Datei. |
| p | Wenn dieses Zeichen das erste Zeichen ist, ist der Eintrag eine FIFO-Gerätedatei (First-In-First-Out). |
| s | Wenn dieses Zeichen das erste Zeichen ist, ist der Eintrag ein lokales Socket. |
| - | Wenn dieses Zeichen das erste Zeichen ist, ist der Eintrag eine normale Datei. |
Die nächsten neun Zeichen sind in drei Sätze mit jeweils drei Zeichen unterteilt. Der erste Satz von drei Zeichen zeigt die Berechtigung des Eigners an. Der nächste Satz von drei Zeichen zeigt die Berechtigung der anderen Benutzer in der Gruppe an. Der letzte Satz von drei Zeichen zeigt die Berechtigung von anderen Benutzern mit Zugriff auf die Datei an. Die drei Zeichen in jedem Satz zeigen die Lese-, Schreib- und Ausführungsberechtigungen der Datei an. Mit der Ausführungsberechtigung für ein Verzeichnis können Sie ein Verzeichnis nach einer bestimmten Datei durchsuchen.
Die Berechtigungen werden wie folgt angegeben:
| Element | Beschreibung |
|---|---|
| r | Read (Lesen) |
| w | Write (Schreiben, Bearbeiten) |
| x | Execute (Ausführen, Suchen) |
| - | Entsprechende Berechtigung nicht erteilt |
Das Zeichen für die Gruppenausführungsberechtigung ist s, wenn die den set-group-ID-Modus hat. Das Zeichen für die Benutzerausführungsberechtigung ist s, wenn die Datei den set-user-ID-Modus hat. Das letzte Zeichen des Modus (in der Regel X oder -) ist T , wenn das Bit 01000 (oktal) des Modus gesetzt ist (die Bedeutung dieses Modus können Sie dem Befehl Chmod entnehmen). Die Anzeiger für set-ID und Bit 01000 des Modus sind Großbuchstaben (S bzw. T), wenn die entsprechende Ausführungsberechtigung nicht gesetzt ist. Der Modus t zeigt an, dass das Sticky Bit für die Datei bzw. das Verzeichnis aktiviert ist.
Der Modus, der mit dem Flag -e angezeigt wird, ist derselbe wie beim Flag -l mit der Ausnahme, dass es ein 11. Zeichen gibt, das wie folgt interpretiert wird:
| Element | Beschreibung |
|---|---|
| + | Zeigt an, dass eine Datei über erweiterte Sicherheitsinformationen verfügt. Die Datei kann beispielsweise die erweiterten Attribute ACL, TCB oder TP im Modus haben. Die Zugriffssteuerungsinformationen (ACL) einer Datei werden mit dem Befehl aclget angezeigt. Der Wert der Attribute TCB und TP wird mit dem Befehl chtcb angezeigt. |
| - | Gibt an, dass eine Datei keine erweiterten Sicherheitsinformationen enthält. |
Wenn die Größe der Dateien in einem Verzeichnis aufgelistet wird, zeigt der Befehl ls die Gesamtzahl der Blöcke an, einschließlich der indirekten Blöcke.
Flags
| Element | Beschreibung |
|---|---|
| -A | Listet alle Einträge auf mit Ausnahme von . (Punkt) und .. (dot-dot). |
| -A | Listet alle Einträge im Verzeichnis auf, einschließlich der Einträge, die mit beginnen. (Punkt). |
| -b | Zeigt nicht druckbare Zeichen in einer oktalen (\nnn) Schreibweise an. |
| -c | Verwendet die Zeit der letzten Änderung des I-Nodes für die Sortierung (bei Verwendung mit dem Flag -t) oder zur Anzeige (bei Verwendung mit dem Flag -lI). Dieses Flag hat keine Wirkung, wenn es nicht zusammen mit dem Flag -t und/oder dem Flag -l verwendet wird. |
| -C | Sortiert die Ausgabe vertikal in einem mehrspaltigen Format. Dies ist die Standardmethode, wenn die Ausgabe auf einem Terminal erfolgt. |
| -d | Zeigt nur die Informationen für das angegebene Verzeichnis an. Verzeichnisse werden wie Dateien behandelt, was bei der Verwendung des Flags -l hilfreich ist, um den Status eines Verzeichnisses abzurufen. |
| -E | Zeigt den Modus (einschließlich Sicherheitsinformationen), die Anzahl der Links, den Eigner, die Gruppe, die Größe (in Byte), die Uhrzeit der letzten Änderung und den Namen jeder Datei an. Wenn es sich bei der Datei um eine Gerätedatei handelt, enthält das Größenfeld die Haupt- und Nebengerätenummern. Handelt es sich bei der Datei um eine symbolische Verbindung, wird der Pfadname der verknüpften Datei mit einem vorangestellten Minuszeichen (->) ausgegeben. Die Attribute des symbolischen Links werden angezeigt. |
| -E | Listet die Speicherbereichsattribute einer Datei in Vxfs-Dateisystemen auf, wie z. B. die Reservierung des Speicherplatzes, die feste Speicherbereichsgröße und die Speicherbereichszuordnung. Sie müssen das Flag -l zusammen mit diesem Flag angeben. Andernfalls ignoriert der Befehl ls das Flag -E und beendet die Ausführung. |
| -F | Listet den Namen in jedem Slot für jedes im Parameter Verzeichnis angegebene Verzeichnis auf. Dieses Flag inaktiviert die Flags -l, -t, -s und -r und aktiviert das Flag -a. Die Sortierung der Liste entspricht der Reihenfolge, in der die Einträge im Verzeichnis enthalten sind. |
| -F | Fügt hinter jedem Dateinamen einen / (Schrägstrich) ein, wenn die Datei ein Verzeichnis ist, einen * (Stern), wenn die Datei ausgeführt werden kann, ein = (Gleichheitszeichen), wenn die Datei ein Socket ist, ein | (Pipezeichen), wenn die Datei eine FIFO-Datei ist, und ein @ für einen symbolischen Link. Symbolische Links, die als Operanden angegeben sind, werden nicht verfolgt, es sei denn, Sie geben das Flag -H oder -L an. |
| -G | Zeigt dieselben Informationen wie das Flag -l an mit der Ausnahme, dass das Flag -g die Anzeige des Eigners und des symbolischen Links unterdrückt. |
| -H | Wenn ein symbolischer Link, der auf eine Datei des Typs Verzeichnis verweist, in der Befehlszeile angegeben wird, wertet der Befehl ls die Dateiinformationen und den Dateityp als Angaben zu der vom Link referenzierten Datei aus und nicht des Links selbst. Der Befehl ls schreibt jedoch den Namen des Links selbst und nicht den der die Datei, auf die der Link verweist. |
| -i | Zeigt die I-Node-Nummer in der ersten Spalte des Berichts für jede Datei an. Wenn das Dateisystem eine interne Momentaufnahme hat, haben das Verzeichnis .snapshot und dessen Inhalt keine eindeutigen I-Node-Nummern. |
| -k | Setzt die Blockgröße für die Option -s und die pro Verzeichnis geschriebene Blockanzahl für die Optionen -l, -n, -g und -o auf 1024 Byte. |
| -L | Listet den Datei- oder Verzeichnisinhalt auf, auf den der Link verweist. Dies ist die Standardaktion. Symbolische Links werden verfolgt. Wenn die Option -l verwendet wird, wird die Option -N als Standardwert verwendet, und es werden keine symbolischen Links verfolgt. Wenn die Option -lverwendet wird, kann die Standardoption -N nur mit der Option -L überschrieben werden. |
| -l | Zeigt den Modus, die Anzahl der Links, den Eigner, die Gruppe, die Größe (in Byte) und die Zeit der letzten Änderung für jede Datei an. Wenn es sich bei der Datei um eine Gerätedatei handelt, enthält das Größenfeld die Haupt- und Nebengerätenummern. Wenn die Zeit der letzten Änderung länger als sechs Monate zurückliegt, wird das Zeitfeld im Format Monat Datum Jahr angezeigt. Wenn die Dateien innerhalb der letzten sechs Monate geändert wurden, wird das Zeitfeld im Format Monat Datum Zeit angezeigt. Wenn es sich bei der Datei um eine symbolische Verbindung handelt, wird der Pfadname der verknüpften Datei mit einem vorangestellten Zeichen (->) ausgegeben. Die Attribute des symbolischen Links werden angezeigt. Die Flags -n, -G und -O überschreiben das Flag -l. Anmerkungen: |
| -m | Verwendet Datenstromausgabeformat (eine durch Kommas getrennte Serie). |
| -N | Zeigt dieselben Informationen an wie das Flag -l mit der Ausnahme, dass das Flag -n die Benutzer- und Gruppen-IDs anstelle der Benutzer- und Gruppennamen anzeigt. |
| -N | Verfolgt keine symbolischen Links, wenn der Status einer Datei bestimmt wird.Anmerkung: Wenn sowohl die Option -L als auch die Option -N verwendet wird, hat die zuletzt angegebene Vorrang. Jedes Mal, wenn ein symbolischer Link angegeben wird, der ein / (Schrägstrich) als letztes Zeichen enthält, wird der Link unabhängig von den verwendeten Optionen automatisch befolgt. |
| -o | Zeigt dieselben Informationen an wie das Flag -l mit der Ausnahme, dass das Flag -o die Anzeige der Informationen zu Gruppen und symbolischen Links unterdrückt. |
| -p | Fügt hinter jedem Dateinamen einen Schrägstrich ein, wenn es sich bei dieser Datei um ein Verzeichnis handelt. Dies ist nützlich, wenn Sie die Ausgabe des Befehls ls wie folgt über eine Pipe an den Befehl pr leiten:
|
| -q | Zeigt nicht druckbare Zeichen in Dateinamen als?(Fragezeichen). |
| -r | Kehrt die Sortierreihenfolge (alphabetisch oder Alter) um. |
| -R | Listet alle Unterverzeichnisse rekursiv auf. |
| -s | Gibt die Größe (einschließlich indirekter Blöcke) für jeden Eintrag in Kilobyte an. |
| -S | Sortiert die Einträge mit der Dateigröße als Primärschlüssel (in absteigender Reihenfolge) und mit dem Dateinamen als Sekundärschlüssel (in aufsteigender Reihenfolge). |
| -T | Sortiert die Einträge nach letzter Änderungszeit (neuester zuerst) und nicht nach Namen. Bei einem symbolischen Link ist die Zeit, die als Sortierschlüssel verwendet wird, die des symbolischen Links selbst. |
| -U | Zeigt ähnliche Informationen wie das Flag -l an. Zeigt den Modus (einschließlich Sicherheitsinformationen, Informationen zu benannten erweiterten Attributen und Verschlüsselungsinformationen), die Anzahl der Links, den Eigner, die Gruppe, die Größe (in Byte), den Zeitpunkt der letzten Änderung und den Namen jeder Datei an. Wenn es sich bei der Datei um eine Gerätedatei handelt, enthält das Größenfeld die Haupt- und Nebengerätenummern. Wenn es sich bei der Datei um einen symbolischen Link handelt, wird der Pfadname der verknüpften Datei mit einem vorangestellten -> (Minuszeichen, Größer-als-Zeichen) ausgegeben. Die Attribute des symbolischen Links werden angezeigt. |
| -u | Verwendet die Uhrzeit des letzten Zugriffs anstelle der Uhrzeit der letzten Änderung für die Sortierung (bei Verwendung mit dem Flag -t) oder für die Anzeige (bei Verwendung mit dem Flag -lI). Dieses Flag hat keine Wirkung, wenn es nicht zusammen mit dem Flag -t und/oder dem Flag -l verwendet wird. |
| -x | Sortiert die Ausgabe horizontal in einem mehrspaltigen Format. |
| -X | Gibt lange Benutzernamen aus, wenn es zusammen mit anderen Flags verwendet wird, die Benutzernamen anzeigen. Die Obergrenze wird durch das ODM-Attribut max_logname in den Objektklassen "PdAt" und "CuAt" bestimmt. Wenn ein Benutzername länger ist als der mit dem Attribut max_logname angegebene Wert, wird er auf die mit dem Attribut max_logname angegebene Anzahl von Zeichen minus eins abgeschnitten. |
| -1 | Erzwingt die Ausgabe in das Format mit einem Eintrag pro Zeile. Dies ist die Standardeinstellung, wenn die Ausgabe nicht an ein Terminal gesendet ist. |
- Wenn eines der Flags -l, -n, -s, -goder -o angegeben ist, wird jeder Datei, die im Verzeichnis vorhanden ist, eine Statuszeile vorangestellt, die die Anzahl der Dateisystemblöcke angibt, die von Dateien belegt sind.
- Wenn das Flag -k nicht zusammen mit einem der Flags -l, -n, -s, -goder -o angegeben wird, gibt die Statuszeile die Anzahl der Dateisystemblöcke an, die von Dateien in Einheiten mit 512 Byte belegt sind.
- Wenn das Flag -k zusammen mit einem der Flags -l, -n, -s, -g oder -o angegeben wird, gibt die Statuszeile die Anzahl der Dateisystemblöcke an, die von Dateien in Einheiten mit 1024 Byte belegt sind.
- Zusätzlich wird bei Bedarf die Anzahl der von Dateien belegten Dateisystemblöcke in dem Verzeichnis auf die nächste ganzzahlige Anzahl von Einheiten abgerundet.
- In der länderspezifischen POSIX-Umgebung ist
%u\ndas Ausgabeformat, das die Anzahl der Einheiten im Verzeichnis darstellt.
Exitstatus
Dieser Befehl gibt die folgenden Exitwerte zurück:
| Element | Beschreibung |
|---|---|
| 0 | Alle Dateien wurden erfolgreich geschrieben. |
| >0 | Es ist ein Fehler aufgetreten. |
Sicherheit
Beispiele
- Geben Sie Folgendes ein, um alle Dateien im aktuellen Verzeichnis aufzulisten:ls -aDaraufhin werden alle Dateien aufgelistet, einschließlich . (Punkt), .. (dot-dot) und andere Dateien, deren Namen mit einem Punkt beginnen.
- Geben Sie Folgendes ein, um detaillierte Informationen anzuzeigen:ls -l chap1 .profileZeigt eine lange Liste mit detaillierten Informationen zuchap1und.profile.
- Geben Sie Folgendes ein, um detaillierte Informationen zu einem Verzeichnis anzuzeigen:ls -d -l . manual manual/chap1Zeigt eine lange Liste der Verzeichnisse an..undmanualund für die Dateimanual/chap1. Ohne das Flag -d werden die Dateien in der.undmanualVerzeichnisse anstelle der detaillierten Informationen zu den Verzeichnissen selbst.
- Geben Sie Folgendes ein, um die Dateien in der Reihenfolge ihrer Änderungszeit aufzulisten:ls -l -tDieser Befehl zeigt eine lange Liste der Dateien an, die zuletzt geändert wurden, gefolgt von den älteren Dateien.
- Geben Sie Folgendes ein, um detaillierte Informationen mit erweiterten Benutzer- und Gruppennamen anzuzeigen:
Dieser Befehl zeigt eine lange Liste mit ausführlichen Informationen zu .profile an.ls -lX .profile - Geben Sie Folgendes ein, um anzuzeigen, ob erweiterte Attribute für die Dateien im aktuellen Verzeichnis festgelegt wurden:
ls -U- Für AIX® 5.3 und frühere Versionen:
Beispielausgabe:
-rwSr-x---+ 1 root system 28 Apr 29 03:23 only_aixc -rwSr-x---E 1 root system 4 Apr 29 03:23 only_aixc_ea -rw-r--r--E 1 root system 4 Apr 29 03:23 only_ea ----------+ 1 root system 265 Apr 29 03:23 only_nfs4 ----------E 1 root system 64 Apr 29 03:23 only_nfs4_ea -rw-r--r--- 1 root system 4 Apr 29 03:23 only_regular - Für Releases AIX 6.1 und höher:
Beispielausgabe:
-rwSr-x---+ 1 root system 28 Apr 29 03:23 only_aixc -rwSr-x---E 1 root system 4 Apr 29 03:23 only_aixc_ea -rw-r--r--E 1 root system 4 Apr 29 03:23 only_ea ----------+ 1 root system 265 Apr 29 03:23 only_nfs4 ----------E 1 root system 64 Apr 29 03:23 only_nfs4_ea -rw-r--r--- 1 root system 4 Apr 29 03:23 only_regular -rwxrwxr-xe 2 root system 256 May 25 16:27 encry_ex
- Für AIX® 5.3 und frühere Versionen:
- Geben Sie Folgendes ein, um Informationen über die Anzahl der Dateisystemblöcke in Einheiten mit 512 Byte für die Dateien im aktuellen Verzeichnis anzuzeigen:
ls -lBeispielausgabe:total 16 -rw-r--r-- 1 root system 22 Feb 05 05:29 sample1 -rw-r--r-- 1 root system 12 Feb 05 05:29 sample2 - Geben Sie Folgendes ein, um Informationen über die Anzahl der Dateisystemblöcke in Einheiten von 1024 Byte für die Dateien im aktuellen Verzeichnis anzuzeigen:
ls -lkBeispielausgabe:total 8 -rw-r--r-- 1 root system 22 Feb 05 05:29 sample1 -rw-r--r-- 1 root system 12 Feb 05 05:29 sample2
Dateien
| Element | Beschreibung |
|---|---|
| /usr/bin/ls | Enthält den Befehl ls. |
| /etc/passwd | Enthält Benutzer-IDs. |
| /etc/group | Enthält Gruppen-IDs. |
| /usr/share/lib/terminfo/* | Enthält Terminalinformationen. |