Dies ist eine alte Version des Dokuments!
ls - list
ls ist das Kommando um sich den Inhalt eines Ordners im Dateisystem anzeigen zu lassen.
Optionen
| -a | Zeigt versteckte Dateien an |
| –color | Farbliche Ausgabe |
| -l | Zeige Dateirechte + Dateigröße in Bytes |
| -lh | Zeige in lesbarer Form |
| -R | Zeigt recursiv den gesamten Inhalt |
| -S | Nach Größe sortiert |
| -t | Nach Zeit sortiert |
| -c | Zeige Datum der letzten Änderung |
| -i | Zeige Inode an |
Zeigt den Inhalt des Ordner user1 an
ls /home/user1
Zeigt detailiert den Inhalt des Ordners /etc an
ls -licah
Beispiele mit Wildcards
1. Stern (`*`) – Platzhalter für beliebig viele Zeichen
Zeigt alle Dateien mit der Endung `.txt` im aktuellen Verzeichnis an:
ls *.txt
Zeigt alle Dateien an, die mit `file` beginnen:
ls file*
Zeigt alle Dateien an, die irgendwo im Namen `data` enthalten:
ls *data*
2. Fragezeichen (`?`) – Platzhalter für genau ein Zeichen
Findet Dateien wie `file1.txt`, aber nicht `file10.txt`:
ls file?.txt
Findet Dateien wie `data_1.csv`, `data_A.csv`, aber nicht `data_10.csv`:
ls data_?.csv
3. Eckige Klammern (`[]`) – Platzhalter für bestimmte Zeichenmengen
Zeigt nur `file1.txt`, `file2.txt` oder `file3.txt`:
ls file[123].txt
Zeigt nur `filea.txt`, `fileb.txt`, `filec.txt`, aber nicht `filed.txt`:
ls file[a-c].txt
Findet `file1.txt` bis `file9.txt`, aber nicht `file10.txt`:
ls file[0-9].txt
4. Negation mit eckigen Klammern (`[^]`) – Alle außer bestimmte Zeichen
Zeigt alle `fileX.txt` Dateien außer `file1.txt`:
ls file[^1].txt
Zeigt alle `fileX.txt` Dateien außer denen, die auf einen Kleinbuchstaben enden:
ls file[^a-z].txt
5. Geschweifte Klammern (`{}`) – mehrere exakte Namen angeben
Listet genau diese drei Dateien auf, falls sie existieren:
ls {file1.txt,file2.txt,log.txt}
Zeigt alle `.jpg`- und `.png`-Dateien an:
ls {*.jpg,*.png}
6. Kombination mehrerer Wildcards
Findet Dateien wie `data_01.log`, `data_AB.log`, aber nicht `data_1.log`:
ls data_??.log
Findet `report_1.txt`, `report_2023.txt`, aber nicht `report_A.txt`:
ls report_[0-9]*.txt
Zeigt alle `.log`- und `.txt`-Dateien im Verzeichnis `/var/log`:
ls /var/log/*.{log,txt}