[[Vorlage(Getestet, jammy, noble)]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Programme_starten: Starten von Programmen] [:Terminal: Ein Terminal öffnen] }}} [[Inhaltsverzeichnis()]] [https://eza.rocks/ eza] {en} ist eine moderne Alternative zum Befehl [:ls:], wobei eza ein Fork von [https://the.exa.website/ exa] {en} ist. eza ist ein überarbeiteter Terminal-Befehl (mit mehr Funktionen) zum Auflisten von Dateien bzw. Ordnern. Dabei werden Farben zur übersichtlicheren Darstellung benutzt. Auch Symlinks und weitere Attribute werden berücksichtigt. Das Programm selber ist in der Programmiersprache [https://www.rust-lang.org/ Rust] {en} implementiert. = Installation = == aus den Paketquellen == Eza kann ab Ubuntu 24.04 direkt aus den Quellen installiert werden: {{{#!vorlage Paketinstallation eza, universe }}} == via cargo == Die aktuelle, stabile Version von eza kann über [:cargo:], den Paketmanager von Rust, installiert werden[3], wobei cargo ggf. noch installiert werden muss: {{{#!vorlage Befehl cargo install eza }}} = Bedienung = Im Vergleich zum traditionellen Befehl ls hat eza andere Voreinstellungen. Insbesondere sind die Dateigrößen standardmäßig besser lesbar angeben, was bisher z.B. mit `ls -h` möglich war. Bei eza entfällt die Option `-h`, weiterhin werden die Ausgaben automatisch in einem Raster ausgegeben. Die meisten Optionen von ls funktionieren jedoch auch konsistent mit eza. == Besondere Optionen == Eine vollständige Liste der Optionen findet man unter [https://github.com/eza-community/eza/blob/main/man/eza.1.md eza-man] {en}. Hier einige Optionen von eza, die sich evtl. von ls abgrenzen: {{{#!vorlage Tabelle Option Beschreibung +++ `-a, --all` Versteckte Dateien (wie z.B. .config) anzeigen. Verwenden Sie dies zweimal, um auch die Verzeichnisse '.' und '..' anzuzeigen. +++ `-D, --only-dirs` Nur Verzeichnisse werden angezeigt, keine Dateien. +++ `-f, --only-files` Nur Dateien werden angezeigt, keine Verzeichnisse. +++ `-G, --grid` Jeder Dateiname wird in einem Raster angezeigt, das in das aktuelle Terminalfenster passt. Die Größe der Spalten des Rasters hängt von den angezeigten Dateinamen ab. Diese "grid view" ist Standardeinstellung. +++ `-l, long` Anzeige der erweiterten Datei-Metadaten in Form einer Tabelle. +++ `-x` oder `--across` Das Raster ist nun so geändert, dass es erst quer und dann abwärts gelesen wird (also zeilenweise). +++ `--git` Wenn man Dateien in einem Git-Repository auflistet, wird der Git-Status für jede Datei anzeigt. So erkennt man, was seit der letzten Übertragung hinzugefügt oder geändert wurde. Diese Option muss zusammen mit `-l` (long view) verwendet werden. +++ `--header` Zeigt zusätzlich noch die Spaltenüberschriften an. +++ `--icons` Neben den Dateinamen werden Symbole angezeigt, um sie besser unterscheiden zu können. Die Symbole sind spezielle Unicode-Symbole und setzen voraus, dass die verwendete Schriftart die richtigen Zeichen enthält. +++ `-r, --reverse` Umgekehrte Sortierreihenfolge +++ `-T, --tree` Erzeugt eine Ausgabe analog zum Shell-Befehl [:tree:]. }}} = Vergleich des Ausgabenlayouts = Als Beispiel sind hier zwei Terminal-Ausgaben dargestellt: {{{#!vorlage Tabelle <:>[[Bild(ls_24_04.png, 400)]] <:>[[Bild(eza1_24_04.png, 400)]] +++ <:>traditioneller Befehl: `ls -l` <:>neuer Befehl: `eza -l` }}} = Experimenteller Einsatz eines Alias = Falls man die Ausgaben von eza gegenüber ls bevorzugt, könnte man ggf. einen [:alias:] anlegen, z.B. `alias ls='eza'`. Damit können gewohnte ls-Befehle stattdessen mit eza ausgeführt werden. Die meisten Optionen von ls sollten konsistent mit eza funktionieren, was hier aber nicht ausführlich getestet wurde. = Links = * [github:eza-community/eza:eza] {en} * [:ls:] * [:Shell/Befehlsübersicht:] #tag: Shell