Der Befehl ls wird in Unix-ähnlichen Betriebssystemen häufig verwendet, um Dateien und Verzeichnisse innerhalb eines Verzeichnisses aufzulisten. Obwohl ls der Standardbefehl für diesen Zweck ist, gibt es mehrere Alternativen und Erweiterungen, die zusätzliche Funktionen und Optionen bieten. Ich benutze exa schon seit langem. Wegen seiner Vielseitigkeit und seiner robusten Funktionen ist es bei vielen anderen Nutzern sehr beliebt.
Der Autor, Benjamin Sago (auch bekannt als Ogham), beschreibt es wie folgt: “exa ist ein verbesserter Dateilister mit mehr Funktionen und besseren Voreinstellungen. Er verwendet Farben, um Dateitypen und Metadaten zu unterscheiden. Er kennt sich mit Symlinks, erweiterten Attributen und Git aus. Und er ist klein, schnell und nur eine einzige Binärdatei.”
Als ich heute die installierten Pakete aktualisierte, meldete brew, dass exa veraltet ist und nicht mehr unterstützt wird. Ich habe das exa GitHub Repo (~23K⭐️) überprüft und es ist traurig, aber wahr - die Hauptnachricht besagt, dass exa nicht mehr gewartet wird :( Aber die Welt ist nicht ohne gute Leute, die sich leidenschaftlich dafür einsetzen, wertvolle Projekte am Leben zu erhalten. Sie haben einen Fork des Projekts namens eza erstellt, der von einem engagierten Team aktiv unterstützt wird.
Wenn du “exa” benutzt hast und auf “eza” umsteigen möchtest, ist der Vorgang auf deinem Mac ganz einfach:
brew remove exa
brew install eza
Nach der Installation aktualisierst du deine Aliase nach Bedarf, um sie an deine bevorzugte Verwendung anzupassen.
Wenn du gerade erst über dieses großartige Tool gestolpert bist, dann bearbeite nach der Installation mit brew install eza deine bevorzugte Shell-Konfigurationsdatei und füge dort die folgenden Zeilen ein. Da ich zsh mit OhMyZsh benutze, habe ich .zshrc bearbeitet und diese Zeilen hinzugefügt:
ld='eza -lD'
lf='eza -lF --color=always | grep -v /'
lh='eza -dl .* --group-directories-first'
ll='eza -al --group-directories-first'
ls='eza -alF --color=always --sort=size | grep -v /'
lt='eza -al --sort=modified'
Jetzt erkläre ich, was sie tun…. Aber zuerst möchte ich dich daran erinnern, dass jeder Befehl, den du aufrufst, in dem Verzeichnis funktioniert, in dem du dich gerade befindest!
ld - listet nur Verzeichnisse auf (keine Dateien)
lf - listet nur Dateien auf (keine Verzeichnisse)
lh - listet nur versteckte Dateien auf (keine Verzeichnisse)
ll - listet alles auf, Verzeichnisse zuerst
ls - listet nur Dateien nach Größe sortiert auf
lt - listet alles auf, sortiert nach Aktualisierungszeit
Einige eza-Funktionen, die nicht in exa enthalten sind (nicht erschöpfend):
- Behebt den “The Grid Bug”, der in exa 2021 eingeführt wurde
- Hyperlink-Unterstützung
- Ausgabe des Selinux-Kontextes
- Ausgabe des Git Repo-Status
- Von Menschen lesbare relative Datumsangaben
- Mehrere Sicherheitskorrekturen (siehe dependabot)
- Viele kleinere Fehlerbehebungen/Änderungen
Viele weitere Kommandozeilenoptionen findest du im offiziellen eza GitHub Repo.
Wenn du immer noch darauf brennst, alternative Lösungen zu sehen, möchte ich hier nur zwei nennen.
👉 Eine davon ist lsd, “the next gen ls command”, geschrieben in Rust. lsd GitHub repo hat fast 11K Sterne.

👉 Ein weiteres Beispiel ist colorls, ein Ruby-Gem, das den Terminal-Befehl ls mit farb- und schriftfreundlichen Symbolen verschönert. Das colorls GitHub Repo hat ~5K Sterne.

Du kannst gerne noch mehr Alternativen ausprobieren, aber ich empfehle dir, bei eza zu bleiben.
Zusammenfassend lässt sich sagen, dass eza dein wichtigster Ersatz für den “ls”-Befehl werden wird, den du auf ganz natürliche Weise und mit mehr Komfort und Produktivität verwenden kannst. Ich bin sicher, dass es dir helfen wird, deine Arbeit im Terminal zu verbessern und deine Produktivität zu steigern!
Im Video siehst du, wie das Ganze funktioniert und erfährst einige nützliche Tipps und Tricks.
Viel Spaß!
😉
Eine Mail, sobald ein neuer Beitrag erscheint.