[[Vorlage(Getestet,  focal,jammy)]]

{{{#!vorlage Wissen
[:Pakete installieren: Installation von Programmen]
[:Programme_starten: Starten von Programmen]
[:Terminal: Ein Terminal öffnen]
}}}

[[Inhaltsverzeichnis()]]
[https://the.exa.website/ exa] {en} ist eine moderne Alternative zum Befehl [:ls:]. exa 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.

= Installation =
== aus den Paketquellen ==
Exa kann seit Ubuntu 20.10 direkt aus den Quellen installiert werden: 
{{{#!vorlage Paketinstallation
exa
}}}

== über PPA ==
Ab Ubuntu 20.04 gibt es ein geeignetes PPA:

[[Vorlage(PPA, spvkgn/exa)]]

{{{#!vorlage Befehl
sudo apt update && sudo apt install exa
}}}

= Bedienung =
Im Vergleich zum traditionellen Befehl ls hat exa andere Voreinstellungen. Insbesondere sind die Dateigrößen standardmäßig besser lesbar angeben, was bisher z.B. mit `ls -h` möglich war. Bei exa entfällt die Option `-h`, weiterhin werden die Ausgaben automatisch in einem Raster ausgegeben. Die meisten Optionen von ls werden jedoch konsistent mit exa funktionieren.

== Besondere Optionen ==
Hier einige  Optionen von exa, die sich von ls abgrenzen:

{{{#!vorlage Tabelle
<tableclass="zebra_start2" rowclass="kopf"> Option
Beschreibung
+++
`--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.
+++
`-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.
+++
`-T`
Erzeugt eine Augabe analog zum Shell-Befehl [:tree:].
}}}

= Vergleich des Ausgabenlayouts  =
Als Beispiel sind hier zwei Ausgaben dargestellt (im xfce4-terminal unter 21.10):
{{{#!vorlage Tabelle
<:>[[Bild(ls_21_10.png, 400)]] 
<:>[[Bild(exa1_21_10.png, 400)]] 
+++
<:>traditioneller Befehl: `ls -l`
<:>neuer Befehl: `exa -l`
}}}
Die dargestellten [https://the.exa.website/docs/colour-themes Farben] {en} können auch angepasst werden.

== Experimenteller Einsatz eines Alias ==
Falls man die Ausgaben von exa gegenüber ls bevorzugt, könnte man ggf. einen [:alias:] anlegen, z.B. `alias ls='exa'`.
Damit sollten die gewohnten ls-Befehle mit exa ausgeführt werden. (Es wird auf der Homepage geschrieben, dass die meisten Optionen von ls konsistent mit exa funktionieren, was hier aber nicht ausführlich getestet wurde.)


= Links =
 * [https://the.exa.website/ exa] {en}
 * [:ls:]
 

##tag: Shell