exa: Verbesserter ls Befehl

Do, 6. Mai 2021, Niklas

Den Befehl ls kennt wohl jeder, der sich schon einmal mit dem Terminal beschäftigt hat. Besonders intuitiv ist er allerdings nicht. Er listet alle Dateien langweilig in der normalen Textfarbe auf und ist durch die Byte-genaue Dateigrössenanzeige etwas unübersichtlich.

exa kann mehr. Es zeigt eine farbige Auflistung, wobei die Farben für bestimmte Metadaten sowie den Dateityp stehen. Ausserdem zeigt es die Dateigrössen in lesbaren Einheiten an, anstatt immer die Bytes zu zählen.

Es unterstützt auch symbolische Links, erweiterte Dateiattributen und die Anzeige des Git Status, falls der Ordner teil eines Git Repositorys ist. Ausserdem kann es rekursiv arbeiten und damit eine Auflistung aller Dateien im angegebenen Ordner sowie in allen Unterordnern davon anzeigen.

exa kann genauso verwendet werden, wie der herkömmliche ls Befehl, wobei die Options- und Dateiangaben auch vertauscht sein können:

exa [OPTIONEN] [DATEIEN]

Führt man exa ohne weitere Angaben aus, sieht es fast schon so aus, wie das gewohnte ls, mit dem einzigen Unterschied, dass die Einträge farbig sind. Mit exa -l erhält man eine ausführlichere Liste. Bei symbolischen Links wird hier auch das Ziel des Links direkt nach dem Dateinamen angezeigt.

Gibt man einen Ordner nach den Optionen an, so erhält man eine Liste der Dateien in diesem Ordner. Wenn man hier eine Datei angibt, kann man mithilfe der -l Option Informationen über diese eine spezielle Datei erfragen.

Mit der -R Option werden alle Dateien und Ordner im aktuellen Ordner aufgelistet und darunter auch alle Dateien in jedem von diesen Ordnern und so weiter. Man kann sich so schnell einen Überblick über die Ordnerstruktur verschaffen.

Eine Besonderheit von exa ist die Option -T oder --tree, die ähnlich wie -R auch die Inhalte der Unterordner auflistet, aber diese übersichtlich in einem Verzeichnisbaum darstellt, sodass man sofort erkennen kann, wo welche Datei zu finden ist.

exa befindet sich bei den meisten Linux Distributionen im offiziellen Repository und kann einfach über den Paketmanager der Distribution installiert werden.

Quelle: https://www.linuxshelltips.com/exa-ls-command-alternative/

scherzkeks
Geschrieben von scherzkeks am 6. Mai 2021

Interessant geschrieben und vor allem der Hinweis, dass es "exa" überhaupt gibt, macht ihn interessant. Aber die einleitenden Worte sind falsch. Die Aussage, der ls-Befehl "listet alle Dateien langweilig in der normalen Textfarbe auf und ist durch die Byte-genaue Dateigrössenanzeige etwas unübersichtlich." ist falsch. Allein das ist mit den Parametern "ls -hl" schnell widerlegt. Bei den übrigen exa-Features gebe ich dem Autor recht ;-)

scherzkeks
Geschrieben von scherzkeks am 6. Mai 2021

Ups, vollständig wird meine Antwort natürlich erst durch den --color-Parameter, also so "ls -hl --color=auto"

tux.
Geschrieben von tux. am 6. Mai 2021

„Er listet alle Dateien langweilig in der normalen Textfarbe auf“

Nun, das erachte ich persönlich ja als Vorteil, es lenkt nicht vom Wesentlichen ab und sieht mit allen Terminalhintergrundfarben akzeptabel aus. Allerdings gibt es dafür unter manchen Systemen Abhilfe: „ls --color=auto“ unter GNU/Linux (oft schon voreingestellt) bzw. „ls -G“ unter einigen BSDs.

„und ist durch die Byte-genaue Dateigrössenanzeige etwas unübersichtlich.“

Bitteschön: „ls -lh“.