Suche…


Syntax

  • ls [OPTION] ... [DATEI] ...

Parameter

Möglichkeit Beschreibung
-a , --all Listen Sie alle Einträge auf, einschließlich derjenigen, die mit einem Punkt beginnen
-A , - --almost-all Listet alle Einträge außer auf . und ..
-c Dateien nach Änderungszeit sortieren
-d , --directory Verzeichniseinträge auflisten
-h , --human-readable Größen in einem für Menschen lesbaren Format anzeigen (z. B. K , M )
-H Wie oben nur bei Potenzen von 1000 statt 1024
-l Inhalte im Format für lange Auflistung anzeigen
-o Long-Listing-Format ohne Gruppeninformationen
-r , --reverse Inhalt in umgekehrter Reihenfolge anzeigen
-s , --size Druckgröße jeder Datei in Blöcken
-S Sortieren nach Dateigröße
--sort=WORD Inhalte nach einem Wort sortieren (dh Größe, Version, Status)
-t Nach Änderungszeit sortieren
-u Sortieren nach letzter Zugriffszeit
-v Nach Version sortieren
-1 Listen Sie eine Datei pro Zeile auf

Dateien auflisten

Der Befehl ls listet den Inhalt eines angegebenen Verzeichnisses mit Ausnahme von dotfiles auf. Wenn kein Verzeichnis angegeben ist, werden standardmäßig die Inhalte des aktuellen Verzeichnisses aufgelistet.

Aufgelistete Dateien werden standardmäßig alphabetisch sortiert und in Spalten ausgerichtet, wenn sie nicht in eine Zeile passen.

$ ls
apt  configs  Documents  Fonts    Music      Programming  Templates  workspace
bin  Desktop  eclipse    git      Pictures   Public       Videos

Dateien in einem langen Auflistungsformat auflisten

Die Option -l ls druckt den Inhalt eines angegebenen Verzeichnisses in einem langen Auflistungsformat. Wenn kein Verzeichnis angegeben ist, werden standardmäßig die Inhalte des aktuellen Verzeichnisses aufgelistet.

ls -l /etc

Beispielausgabe:

total 1204
drwxr-xr-x  3 root root    4096 Apr 21 03:44 acpi
-rw-r--r--  1 root root    3028 Apr 21 03:38 adduser.conf
drwxr-xr-x  2 root root    4096 Jun 11 20:42 alternatives
...

Die Ausgabe zeigt zuerst die total , die die Gesamtgröße aller Dateien in dem aufgelisteten Verzeichnis in Blöcken angibt. Es zeigt dann acht Informationsspalten für jede Datei im aufgelisteten Verzeichnis an. Nachfolgend sind die Details für jede Spalte in der Ausgabe aufgeführt:

Spalte Nr. Beispiel Beschreibung
1.1 d Dateityp (siehe Tabelle unten)
1.2 rwxr-xr-x Berechtigungszeichenfolge
2 3 Anzahl der Hardlinks
3 root Besitzername
4 root Eigentümergruppe
5 4096 Dateigröße in Bytes
6 Apr 21 03:44 Änderungszeit
7 acpi Dateiname

Dateityp

Der Dateityp kann eines der folgenden Zeichen sein.

Charakter Dateityp
- Reguläre Datei
b Spezielle Datei blockieren
c Zeichendatei
C Hochleistungsdatei ("zusammenhängende Daten")
d Verzeichnis
D Tür (nur spezielle IPC-Datei in Solaris 2.5+)
l Symbolischer Link
M Offline-Datei ("migriert") (Cray DMF)
n Netzwerk-Spezialdatei (HP-UX)
p FIFO (Named Pipe)
P Port (spezielle Systemdatei nur in Solaris 10+)
s Steckdose
? Ein anderer Dateityp

Listendateien nach Größe sortiert

Mit der Option -S ls die Dateien in absteigender Reihenfolge der Dateigröße sortiert.

$ ls -l -S ./Fruits
total 444
-rw-rw-rw- 1 root root 295303 Jul 28 19:19 apples.jpg
-rw-rw-rw- 1 root root 102283 Jul 28 19:19 kiwis.jpg
-rw-rw-rw- 1 root root  50197 Jul 28 19:19 bananas.jpg

Bei Verwendung der Option -r die Sortierreihenfolge umgekehrt.

$ ls -l -S -r /Fruits
total 444
-rw-rw-rw- 1 root root  50197 Jul 28 19:19 bananas.jpg
-rw-rw-rw- 1 root root 102283 Jul 28 19:19 kiwis.jpg
-rw-rw-rw- 1 root root 295303 Jul 28 19:19 apples.jpg

Listendateien ohne 'ls'

Verwenden Sie die Dateinamenerweiterung der Bash-Shell und die Erweiterungsfunktionen für geschweifte Klammern , um die Dateinamen zu erhalten:

# display the files and directories that are in the current directory
printf "%s\n" *

# display only the directories in the current directory
printf "%s\n" */

# display only (some) image files
printf "%s\n" *.{gif,jpg,png}

Um eine Liste von Dateien in einer Variablen für die Verarbeitung zu erfassen, ist es normalerweise ratsam, ein Bash-Array zu verwenden :

files=( * )

# iterate over them
for file in "${files[@]}"; do
    echo "$file"
done

Listen Sie die zehn zuletzt geänderten Dateien auf

Im Folgenden werden bis zu zehn der zuletzt geänderten Dateien im aktuellen Verzeichnis mit einem langen Auflistungsformat ( -l ) und nach Zeit ( -t ) sortiert aufgeführt.

ls -lt | head

Alle Dateien auflisten, einschließlich Dotfiles

Eine Punktdatei ist eine Datei, deren Namen mit a beginnen . . Diese werden normalerweise von ls ausgeblendet und nicht aufgeführt, sofern dies nicht verlangt wird.

Zum Beispiel folgende Ausgabe von ls :

$ ls
bin  pki

Die Option -a oder --all listet alle Dateien auf, einschließlich Dotfiles.

$ ls -a
.   .ansible       .bash_logout   .bashrc  .lesshst  .puppetlabs  .viminfo
..  .bash_history  .bash_profile  bin      pki       .ssh

Mit der Option -A oder - --almost-all werden alle Dateien einschließlich der Punktdateien aufgelistet, jedoch nicht impliziert . und .. Beachten Sie das . ist das aktuelle Verzeichnis und .. ist das übergeordnete Verzeichnis.

$ ls -A 
.ansible       .bash_logout   .bashrc  .lesshst  .puppetlabs  .viminfo
.bash_history  .bash_profile  bin      pki       .ssh

Dateien in einem baumähnlichen Format auflisten

Der tree listet den Inhalt eines angegebenen Verzeichnisses in einem baumartigen Format auf. Wenn kein Verzeichnis angegeben ist, werden standardmäßig die Inhalte des aktuellen Verzeichnisses aufgelistet.

Beispielausgabe:

$ tree /tmp
/tmp
├── 5037
├── adb.log
└── evince-20965
    └── image.FPWTJY.png

Verwenden Sie die Option -L des tree Befehls, um die Anzeigetiefe zu begrenzen, und die Option -d um nur Verzeichnisse anzuzeigen.

Beispielausgabe:

$ tree -L 1 -d /tmp
/tmp
└── evince-20965


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow