15%

15% auf alle Hosting-Dienste sparen

Teste deine Fähigkeiten und erhalte Rabatt auf jeden Hosting-Plan

Benutze den Code:

Skills
Anfangen
02.09.2025

Wie man Verzeichnisse in Linux auflistet: Ein vollständiger Leitfaden für Anfänger und Systemadministratoren

Die Arbeit in Linux fühlt sich oft an wie die Navigation in einer riesigen Bibliothek. Statt Regale haben Sie Verzeichnisse (Ordner), und statt Bücher haben Sie Dateien. Egal ob Sie ein erfahrener Systemadministrator, ein Entwickler oder ein neugieriger Anfänger sind, die Beherrschung der Grundlagen der Dateisystem-Navigation ist unverzichtbar. Eine der wichtigsten grundlegenden Fähigkeiten ist zu wissen, wie man Verzeichnisse effizient und genau auflistet.

Dieser Leitfaden führt Sie durch jede praktische Methode zum Auflisten von Verzeichnissen in Linux, erklärt die Stärken und Grenzen jedes Ansatzes und zeigt Ihnen genau, wann Sie welches Tool verwenden sollten — auch beim Scripting und in Produktionsserver-Umgebungen.

Warum das Auflisten von Verzeichnissen wichtig ist

Auf einem persönlichen Computer könnten Sie gelegentlich Ihren Ordner „Dokumente” oder „Downloads” über eine grafische Benutzeroberfläche durchsuchen. Auf einem Linux-Server sind Verzeichnisse jedoch das Herzstück fast jeder administrativen Aufgabe, die Sie ausführen werden:

  • Systemverwaltung: Schnell überprüfen, was sich in /etc/, /var/log/ oder /usr/local/bin/ befindet.
  • Web-Hosting: Projektordner unter /var/www/ oder /home/ lokalisieren und verwalten.
  • Softwareentwicklung: Versionskontroll- und Umgebungsverzeichnisse wie .git/ oder .venv/ identifizieren.
  • Sicherheitsprüfung: Genau bestätigen, was auf dem System installiert, konfiguriert und ausgeführt wird.
  • Automatisierung und Scripting: Zuverlässig Verzeichnisse für die Verwendung in Shell-Skripten und Cron-Jobs aufzählen.

Wenn Sie Verzeichnisse nicht effizient auflisten können, werden Sie sich immer desorientiert fühlen — besonders in einer Remote-VPS-Hosting-Umgebung, in der Sie nicht auf einen grafischen Dateimanager zurückgreifen können.

Methode 1: Der ls-Befehl — Schnell und einfach

Der ls-Befehl ist das Standard-Tool zum Anzeigen des Inhalts eines Verzeichnisses. Es ist der erste Befehl, den die meisten Linux-Benutzer lernen, und das aus gutem Grund: Er ist schnell, benutzerfreundlich und auf jedem Unix-ähnlichen System verfügbar.

Grundlegende Verwendung

ls

Dies listet alle nicht-versteckten Dateien und Verzeichnisse im aktuellen Arbeitsverzeichnis auf.

Nur Verzeichnisse auflisten

ls -d */

So funktioniert jeder Teil:

  • -d — Teilt ls mit, nicht in Unterverzeichnisse abzusteigen, sondern die Verzeichniseinträge selbst aufzulisten.
  • */ — Ein Shell-Glob-Muster, das alle Verzeichnisse (und symbolische Links zu Verzeichnissen) im aktuellen Ordner abgleicht.

Verzeichnisse mit detaillierten Informationen auflisten

ls -ld */

Das Hinzufügen von -l gibt Ihnen ein langes Listenformat, das Folgendes enthält:

  • Dateiberechtigungen
  • Anzahl der Hard Links
  • Besitzer und Gruppe
  • Dateigröße
  • Zeitstempel der letzten Änderung

Beispielausgabe:

drwxr-xr-x 3 root root 4096 Jun 10 14:22 backups/
drwxr-xr-x 5 www-data www-data 4096 Jun 12 09:15 html/
drwxr-xr-x 2 deploy deploy 4096 Jun 11 18:03 logs/

Einschränkung: Versteckte Verzeichnisse sind ausgeschlossen

Das */-Glob gleicht nicht versteckte Verzeichnisse ab — solche, deren Namen mit einem Punkt beginnen (.), wie .git/, .ssh/ oder .config/. Dies ist ein wichtiger Vorbehalt, besonders in sicherheitsempfindlichen Umgebungen.

Wann ls -d */ verwendet werden sollte: Schnelle, interaktive Überprüfungen, bei denen Sie nur sichtbare Verzeichnisse benötigen und keine Scripting-Zuverlässigkeit erforderlich ist.

Methode 2: Der find-Befehl — Leistungsstark und zuverlässig

Der find-Befehl ist die Wahl des Profis zum Aufzählen von Verzeichnissen. Im Gegensatz zu ls ist er für programmatische Verwendung konzipiert, unterstützt rekursive Durchquerung, enthält standardmäßig versteckte Verzeichnisse und verhält sich über verschiedene Linux-Distributionen und Locales hinweg konsistent.

Alle Verzeichnisse rekursiv auflisten

find . -type d
  • . — Beginnen Sie im aktuellen Verzeichnis.
  • -type d — Gleichen Sie nur Verzeichniseinträge ab (nicht Dateien, Symlinks oder andere Typen).

Dies listet rekursiv jedes Verzeichnis auf jeder Tiefenebene unter Ihrem aktuellen Standort auf.

Nur Verzeichnisse der obersten Ebene auflisten (tragbare Methode)

find . -mindepth 1 -maxdepth 1 -type d
  • -mindepth 1 — Schließt das aktuelle Verzeichnis selbst (.) aus den Ergebnissen aus.
  • -maxdepth 1 — Verhindert Rekursion über die unmittelbaren Kinder hinaus.

Dies ist die tragbarste und zuverlässigste Methode, um nur die direkten Unterverzeichnisse des aktuellen Ordners aufzulisten, und sie funktioniert identisch auf GNU/Linux-, macOS- und BSD-Systemen.

Alternative für GNU/Linux-Systeme

Auf den meisten modernen Linux-Distributionen — einschließlich solcher, die auf Dedicated Servers laufen — können Sie auch Folgendes verwenden:

find . -maxdepth 1 -type d

Beachten Sie, dass dies . selbst in die Ausgabe einbezieht. Verwenden Sie -mindepth 1 zusammen mit -maxdepth 1, um es sauber auszuschließen.

Versteckte Verzeichnisse einbeziehen

Da find nicht auf Shell-Globs angewiesen ist, enthält es automatisch versteckte Verzeichnisse:

find . -mindepth 1 -maxdepth 1 -type d

Dies zeigt .git/, .ssh/, .config/ und alle anderen Punkt-Präfix-Verzeichnisse neben sichtbaren an.

find in Skripten verwenden

find ist das richtige Tool für Shell-Scripting, weil:

  • Es Dateinamen mit Leerzeichen und Sonderzeichen sicher verarbeitet.
  • Es nicht von Locale-Einstellungen oder Terminal-Farbkonfigurationen beeinflusst wird.
  • Es konsistente, analysierbare Ausgabe erzeugt.

Beispiel: Über alle Verzeichnisse der obersten Ebene iterieren

find . -mindepth 1 -maxdepth 1 -type d | while read -r dir; do
    echo "Processing: $dir"
done

Wann find verwendet werden sollte: Jedes Mal, wenn Sie versteckte Verzeichnisse einbeziehen müssen, rekursive Ergebnisse benötigen oder zuverlässige Ausgabe für Scripting und Automatisierung benötigen.

Methode 3: Der tree-Befehl — Visuelle Verzeichniskarten

Der tree-Befehl rendert eine visuelle, hierarchische Karte Ihrer Verzeichnisstruktur. Er ist nicht auf allen Distributionen standardmäßig installiert, aber äußerst nützlich für Dokumentation, Onboarding und zum Verständnis komplexer Projektlayouts.

tree installieren

Debian/Ubuntu:

sudo apt install tree

CentOS/RHEL/AlmaLinux:

sudo yum install tree

Nur Verzeichnisse auflisten (keine Dateien)

tree -d

Tiefe begrenzen, um überwältigende Ausgabe zu vermeiden

tree -d -L 2
  • -d — Nur Verzeichnisse anzeigen.
  • -L 2 — Begrenzen Sie die Anzeige auf 2 Ebenen tief.

Beispielausgabe:

.
├── backups
│   └── daily
├── html
│   ├── assets
│   └── uploads
└── logs

Versteckte Verzeichnisse einbeziehen

tree -d -a

Wann tree verwendet werden sollte: Visualisierung von Projektstrukturen, Schreiben von Dokumentation oder Erkundung eines unbekannten Server-Layouts zum ersten Mal.

Methode 4: Warum Sie ls -l | grep "^d" vermeiden sollten

Sie werden gelegentlich dieses Muster online vorgeschlagen sehen:

ls -l | grep "^d"

Die Idee ist, die Langlistenausgabe von ls zu filtern, um nur Zeilen anzuzeigen, die mit d beginnen — was ein Verzeichnis anzeigt. Während dies clever wirkt, ist es grundlegend fragil und sollte in jedem ernsthaften Kontext vermieden werden:

ProblemErklärung
Locale-EmpfindlichkeitEinige Locales oder Terminal-Konfigurationen ändern das Ausgabeformat von ls -l, was das grep-Muster unterbricht.
FarbcodesWenn ls ANSI-Farbescapesequenzen ausgibt, kann das ^d-Muster möglicherweise nicht abgleichen.
Versteckte VerzeichnisseNicht angezeigt, genau wie bei ls -d */.
Symbolische LinksSymlinks, die auf Verzeichnisse zeigen, werden als l angezeigt, nicht als d, daher werden sie stillschweigend ausgeschlossen.
Scripting-UnzuverlässigkeitDas Analysieren von ls-Ausgabe in Skripten wird in Best Practices für Shell-Scripting ausdrücklich nicht empfohlen.

Verwenden Sie stattdessen find. Es ist speziell für diese Aufgabe konzipiert und vermeidet alle oben genannten Fallstricke.

Schnellreferenz: Wahl der richtigen Methode

ZielBester Befehl
Schnelle interaktive Überprüfung (nur sichtbare Verzeichnisse)ls -d */
Detaillierte Auflistung mit Berechtigungenls -ld */
Verzeichnisse der obersten Ebene einschließlich versteckterfind . -mindepth 1 -maxdepth 1 -type d
Alle Verzeichnisse rekursivfind . -type d
Visuelle Baumstrukturtree -d
Verwendung in einem Shell-Skriptfind . -mindepth 1 -maxdepth 1 -type d

Best Practices für Produktionsserver-Umgebungen

Bei der Arbeit auf einem Live-Server — ob es sich um ein Shared Web Hosting-Konto oder einen vollständig verwalteten VPS handelt — beachten Sie diese Prinzipien:

  1. Überprüfen Sie immer versteckte Verzeichnisse während Sicherheitsprüfungen. Verzeichnisse wie .ssh/, .git/, .env/ und .config/ enthalten oft sensible Anmeldedaten, Schlüssel und Konfigurationsdateien. Verwenden Sie ###PPT_NO
15%

15% auf alle Hosting-Dienste sparen

Teste deine Fähigkeiten und erhalte Rabatt auf jeden Hosting-Plan

Benutze den Code:

Skills
Anfangen