Wie listet man Verzeichnisse in Linux auf?
Arbeiten in Linux fühlt sich oft an wie das Navigieren in einer riesigen Bibliothek. Anstelle von Regalen haben Sie Verzeichnisse (Ordner), und anstelle von Büchern haben Sie Dateien. Um als Systemadministrator, Entwickler oder sogar neugieriger Anfänger effektiv zu sein, müssen Sie die Grundlagen des Navigierens in dieser Struktur beherrschen. Eine der wichtigsten Fähigkeiten ist das Lernen, wie man Verzeichnisse auflistet. Dieser Artikel wird Sie durch verschiedene Ansätze führen, ihre Vor- und Nachteile erklären und Ihnen zeigen, wann jede Methode sinnvoll ist.
Warum das Auflisten von Verzeichnissen wichtig ist
Auf einem persönlichen Computer werfen Sie vielleicht nur gelegentlich einen Blick in Ihren „Dokumente“- oder „Downloads“-Ordner. Auf einem Server hingegen stehen Verzeichnisse im Mittelpunkt der täglichen Aufgaben:
- Systemadministration: schnell überprüfen, was in /etc/ oder /var/log/ vorhanden ist.
- Webhosting: Projektordner in /var/www/ finden.
- Entwicklung: versteckte Verzeichnisse wie .git/ oder .venv/ identifizieren.
- Sicherheit: bestätigen, was auf dem System installiert und aktiv ist.
Kurz gesagt: Wenn Sie nicht wissen, wie man Verzeichnisse effizient auflistet, werden Sie sich immer verloren fühlen.
Die einfachste Methode: ls
Der Befehl ls ist das Standardwerkzeug, um den Inhalt eines Ordners anzuzeigen. Führen Sie ihn ohne Argumente aus:
Dies zeigt sowohl Dateien als auch Verzeichnisse an. Wenn Sie nur Verzeichnisse sehen möchten:
Hier ist, was passiert:
- -d sagt ls, dass es nicht in jedes Verzeichnis eintauchen soll.
- */ ist ein Shell-Muster, das alle Verzeichnisse im aktuellen Ordner übereinstimmt.
Aber es gibt eine Einschränkung: Versteckte Verzeichnisse (die mit einem Punkt beginnen, wie .git) werden nicht angezeigt.
Wenn Sie auch Details — Berechtigungen, Eigentum, Zeitstempel — möchten, führen Sie aus:
Verwenden Sie dies, wenn Sie nur einen schnellen Blick werfen möchten, aber beachten Sie, dass es nicht die zuverlässigste Methode für Skripting ist.
Eine zuverlässigere Methode: find
find ist wie ein Suchscheinwerfer: Er kann Ihr System nach Verzeichnissen in beliebiger Tiefe scannen.
Listen Sie alle Verzeichnisse rekursiv vom aktuellen Standort auf:
Nur oberste Verzeichnisse (portabel über Linux, macOS, BSD):
Wenn Sie auf GNU/Linux (den meisten VPS-Distributionen) sind, können Sie eine einfachere Version verwenden:
Wann man find verwenden sollte:
- Sie möchten, dass versteckte Verzeichnisse einbezogen werden.
- Sie benötigen rekursive Ergebnisse.
- Sie schreiben ein Skript und benötigen Konsistenz über Systeme hinweg.
Warum nicht ls -l | grep “^d”?
Manchmal wird dies vorgeschlagen:
Es filtert die Ausgabe von ls -l, um nur Verzeichnisse anzuzeigen (da sie mit d beginnen).
Aber dieser Ansatz ist fragil:
- Unterschiedliche Locale oder Farbeinstellungen können das Parsen stören.
- Symbolische Links zu Verzeichnissen erscheinen nicht.
- Nicht zuverlässig für die Automatisierung.
Besser ist es, stattdessen find zu verwenden.
Best Practices
- Für Skripting: verwenden Sie find — portabel, konsistent und funktioniert mit versteckten Verzeichnissen.
- Für schnelle Überprüfungen: ls -d */ ist in Ordnung — denken Sie nur daran, dass es versteckte Ordner ignoriert.
- Für visuelle Struktur: verwenden Sie tree.
- Für Sicherheit: überprüfen Sie immer versteckte Verzeichnisse — sie speichern oft wichtige Konfigurationen (.ssh, .git, .config).
- Fazit
Das Auflisten von Verzeichnissen ist eine grundlegende, aber wesentliche Linux-Fähigkeit. Je nach Kontext haben Sie mehrere Werkzeuge:
- ls -d */ für schnelle Überprüfungen.
- find . -mindepth 1 -prune -type d für zuverlässige oberste Ergebnisse.
- tree -d für eine visuelle Karte Ihres Systems.
Auf einem AlexHost VPS oder Dedicated Server helfen Ihnen diese Befehle, die volle Kontrolle über Ihre Umgebung zu behalten, egal ob Sie Anwendungen bereitstellen, Protokolle überwachen oder einfach das Dateisystem erkunden. Sie zu beherrschen, wird Ihnen Zeit sparen, Fehler verhindern und Ihnen das Gefühl geben, sich auf jedem Linux-Rechner zuhause zu fühlen.
