Linux-Befehl ls
Linux ls(Vollständige englische Schreibweise: list directory contents) Der Befehl wird verwendet, um den Inhalt des angegebenen Arbeitsverzeichnisses anzuzeigen (Auflistung der Dateien und Unterverzeichnisse, die im aktuellen Arbeitsverzeichnis enthalten sind).
Syntax
ls [-alrtAFR] [name...]
Optionen:
| Optionen | Beschreibung |
|---|---|
-aoder--all | Alle Dateien anzeigen (einschließlich derer, die mit.einem Punkt beginnen, d. h. versteckte Dateien). |
-Aoder--almost-all | Alle Dateien anzeigen, außer.und..für die Einträge . und .. (einschließlich versteckter Dateien). |
-l | Dateien im Langformat auflisten (detaillierte Informationen) (Berechtigungen, Besitzer, Größe, Änderungszeit usw.). |
-hoder--human-readable | und-lBei gemeinsamer Verwendung Dateigrößen in menschenlesbarem Format anzeigen (z. B. KB, MB). |
-t | Nach Änderungszeit sortieren (neueste zuerst). |
-roder--reverse | Umgekehrte Sortierung (verwendet mit-t、-Susw.). |
-S | Nach Dateigröße sortieren (größte Dateien zuerst). |
-Roder--recursive | Inhalte von Unterverzeichnissen rekursiv auflisten. |
-Foder--classify | Einen Indikator an Dateinamen anhängen (wie etwa/zur Kennzeichnung eines Verzeichnisses,*zur Kennzeichnung einer ausführbaren Datei). |
--color | Farbige Ausgabe (normalerweise standardmäßig aktiviert,--color=auto)。 |
-ioder--inode | Die Inode-Nummer der Datei anzeigen. |
-noder--numeric-uid-gid | UID und GID numerisch anzeigen (statt Benutzer- und Gruppennamen). |
-doder--directory | Nur das Verzeichnis selbst anzeigen, nicht dessen Inhalt (wird oft zusammen mit-l)。 |
-1 | Nur eine Datei pro Zeile anzeigen (automatisch aktiviert, wenn die Terminalbreite nicht ausreicht). |
-m | Dateien als kommagetrennte Liste anzeigen. |
-Qoder--quote-name | Dateinamen in Anführungszeichen setzen (nützlich für Dateinamen mit Leerzeichen). |
--group-directories-first | Verzeichnisse zuerst anzeigen, dann Dateien. |
--time-style=<格式> | Zeitanzeigeformat anpassen (z. B.,+%Y-%m-%d)。 |
Beispiele
ls -a # Alle Dateien und Verzeichnisse im aktuellen Verzeichnis anzeigen, einschließlich versteckter Dateien
ls -lh # Datei- und Verzeichnisgrößen im aktuellen Verzeichnis in menschenlesbarer Form anzeigen
ls -t # Dateien und Verzeichnisse im aktuellen Verzeichnis nach Änderungszeit sortiert anzeigen
ls -R # Alle Dateien und Unterverzeichnisse im aktuellen Verzeichnis rekursiv anzeigen
ls -l /etc/passwd # Detaillierte Informationen der Datei /etc/passwd anzeigen
Beispiele
Alle Dateien im aktuellen Verzeichnis detailliert auflisten (einschließlich versteckter Dateien):
ls -la
Dateien nach Größe in umgekehrter Reihenfolge sortieren (größte Dateien zuerst):
ls -lShr
Den Inhalt des Verzeichnisses /var/log rekursiv auflisten und menschenlesbare Dateigrößen anzeigen:
ls -lhR /var/log
Nur detaillierte Informationen des Verzeichnisses anzeigen (nicht rekursiv):
ls -ld /etc
Nach Änderungszeit sortieren (neueste Dateien werden zuletzt angezeigt):
ls -ltr
Alle Verzeichnisse unter dem Stammverzeichnis auflisten:
# ls / bin dev lib media net root srv upload www boot etc lib64 misc opt sbin sys usr home lost+found mnt proc selinux tmp var
Detaillierte Informationen zu allen Verzeichnissen und Dateien unter dem Verzeichnis /bin auflisten:
ls -lR /bin
Wenn Dateinamen Leerzeichen, Sonderzeichen enthalten oder mit einem Bindestrich beginnen, können Sie einen Backslash (\) zum Escapen verwenden oder die Dateinamen in Anführungszeichen setzen. Zum Beispiel:
ls "my file.txt" # 列出文件名为"my file.txt"的文件 ls my\ file.txt # 列出文件名为"my file.txt"的文件 ls -- -filename # 列出文件名为"-filename"的文件
Der Befehl ls kann auch Platzhalter für den Musterabgleich verwenden, zum Beispiel steht*für die Übereinstimmung mit beliebigen Zeichen,?für die Übereinstimmung mit einem Zeichen,[...]für die Übereinstimmung mit Zeichen innerhalb eines angegebenen Bereichs. Zum Beispiel:
ls *.txt # 列出所有扩展名为.txt的文件 ls file?.txt # 列出文件名为file?.txt的文件,其中?表示任意一个字符 ls [abc]*.txt # 列出以a、b或c开头、扩展名为.txt的文件
Alle Dateien im aktuellen Arbeitsverzeichnis auflisten, deren Namen mit s beginnen, wobei die neuesten am Ende stehen:
ls -ltr s*
Wenn Sie den Befehlls -lverwenden, gibt die erste Spalte der Zeichen den Typ und die Berechtigungen der Datei oder des Verzeichnisses an. Das erste Zeichen gibt den Dateityp an, zum Beispiel:
- - steht für eine reguläre Datei
- d steht für ein Verzeichnis
- l steht für einen symbolischen Link
- c steht für eine Zeichengerätedatei
- b steht für eine Blockgerätedatei
- s steht für eine Socket-Datei
- p steht für eine Pipe-Datei
Wenn Sie den Befehlls -lverwenden, stellen die verbleibenden 9 Zeichen in der ersten Spalte die Zugriffsberechtigungen der Datei oder des Verzeichnisses dar, entsprechend Dreiergruppen vonrwxBerechtigungen. Zum Beispiel
:- r steht für Leseberechtigung
- w steht für Schreibberechtigung
- x steht für Ausführungsberechtigung
- - steht für keine entsprechende Berechtigung
Die ersten drei Zeichen stehen für die Berechtigungen des Eigentümers, die mittleren drei für die Berechtigungen der Gruppe und die letzten drei für die Berechtigungen anderer Benutzer. Zum Beispiel:
-rw-r--r-- 1 user group 4096 Feb 21 12:00 file.txt
Kennzeichnet die Datei mit dem Namen file.txt; der Eigentümer hat Lese- und Schreibberechtigung, während die Gruppe und andere Benutzer nur Leseberechtigung haben.
Zuletzt geänderte Dateien finden:
ls -lt | head -5
Die 5 zuletzt geänderten Dateien anzeigen.
Die Anzahl der Dateien zählen:
ls | wc -l
Zählen Sie die Anzahl der Dateien im aktuellen Verzeichnis (ohne versteckte Dateien).
Hinweise
Die Ausgabefarbe des ls-Befehls kann mit der Option --color gesteuert werden:
- Blau: Verzeichnis
- Grün: ausführbare Datei
- Rot: komprimierte Datei
- Cyan: Verknüpfungsdatei
- Gelb: Gerätedatei
Beachten Sie bei der Verwendung von ls in Skripten, dass das direkte Parsen der Ausgabe von ls unzuverlässig sein kann; es wird empfohlen, andere Methoden zu verwenden.
Der ls-Befehl kann sich zwischen Linux-Distributionen geringfügig unterscheiden; Sie könnenman lsdie spezifische Hilfedokumentation einsehen.
Linux-Befehlsreferenz