ubuntuusers.de

dircolors

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/terminal.png Der Konsolenbefehl ls ermöglicht es, sich den Inhalt eines Verzeichnisses auf der Konsole anzeigen zu lassen. Standardmäßig werden dabei die Ordner und Dateinamen in verschiedenen Vorder- und Hintergrundfarben dargestellt. Welche Farben für welche Art von Dateien verwendet werden, ist in der Umgebungsvariablen LS_COLORS festgelegt. Da der Inhalt dieser Variablen für einen Benutzer recht schwer zu interpretieren und korrekt zu ändern ist, gibt es das Programm dircolors.

Installation

Das Programm dircolors ist im essentiellen Paket

  • coreutils

von Ubuntu enthalten und ist auf jedem System vorinstalliert.

Optionen

dircolors - Optionen
Optionen Bedeutung
-b Bourne‐Shell‐Code, um LS_COLORS zu setzen
-c C‐Shell‐Code, um LS_COLORS zu setzen
-p Standardeinstellungen ausgeben

Eine detaillierte Beschreibung erhält man in den man-Pages oder info-Seiten zu dircolors.

Farben ändern

Um die Farbliste zu bearbeiten nutzt man folgenden Befehl.

dircolors -p > ~/.dircolors 

Die im Homeverzeichnis entstandene Datei .dircolors lässt sich danach mit einem beliebigen Editor [2] bearbeiten.

Nach dem Anpassen der Datei setzt man mit folgendem Befehl die Umgebungsvariable LS_COLORS:

eval "$(dircolors -b ~/.dircolors)" 

Dadurch kann man einfach testen, ob die neuen Farben gefallen.

Beim Öffnen eines neuen Terminals wird die Datei ~/.dircolors von der ~/.bashrc automatisch ausgewertet und die Farben entsprechend gesetzt. Um die ursprünglichen Farben und den Wert für LS_COLORS wieder zu erhalten einfach die Datei ~/.dircolors löschen / umbenennen.

$LS_COLORS

LS_COLORS ist wie folgt formatiert:

  • Der Doppelpunkt dient als Trennzeichen zwischen den Einträgen.

  • Die Farben werden untereinander mit einem Semikolon getrennt.

  • Die Reihenfolge der Farbcodes in einem Eintrag ist egal.

Die Einträge können um jede beliebige Dateiendung erweitert werden, zum Beispiel: *.txt=01;31:

Beispiel: bd=40;30;01:

  • bd - für ein Block Device

  • 40 - Hintergrundfarbe Schwarz

  • 30 - Schriftfarbe Gelb

  • 01 - Attribut Fettschrift

Vordefinierte Datentypen

Datentypen
Kürzel Bedeutung Erläuterung
no Normal (non-filename) text Normaler Text
fi Regular file Normale Datei
di Directory Verzeichnis
ln Symbolic link Symbolischer Link
pi Named pipe (FIFO) FIFOs (benannte Pipes)
so Socket Socket
do Door Verbindung zu einem Programm mittels Inter Process Communication (IPC)
bd Block device Block-orientiertes Gerät (üblicherweise in »/dev«, z.B. »/dev/sda1«)
cd Character device Zeichen-orientiertes Gerät (üblicherweise in »/dev«, z.B. »/dev/ttyS0«)
or Orphanned symbolic link (defaults to ln) Defekter symbolischer Link (Ziel existiert nicht)
su file that is setuid (u+s) Datei mit gesetztem UID-Bit
sg file that is setgid (g+s) Datei mit gesetztem GID-Bit
tw dir that is sticky and other-writable (+t,o+w)
ow dir that is other-writable (o+w) and not sticky
st dir with the sticky bit set (+t) and not other-writable
ex Executable file Ausführbare Dateien
mi Missing file (defaults to fi) fehlende Datei
lc Left code
rc Right code
ec End code (replaces lc+no+rc)

Für den Eintrag Link (ln) kann man auch den Wert target setzen. Dies bewirkt, dass ein Link nicht mit einer festen Farbe angezeigt wird, sondern mit der Farbe des Ziels.

Auswahl von Farbcodes nach ISO 6429

Attribute
00 Normal
01 Fett
04 Unterstrichen
05 Blinkend
07 Vorder- und Hintergrund vertauscht
08 Verborgen

Schriftfarbe
30 Schwarz
31 Rot
32 Grün
33 Gelb
34 Blau
35 Magenta
36 Cyan
37 Weiß
90-97 wie oben, nur heller

Hintergrundfarbe
40 Schwarz
41 Rot
42 Grün
43 Gelb
44 Blau
45 Magenta
46 Cyan
47 Weiß
100-107 wie oben, nur heller

Diese Revision wurde am 1. Oktober 2018 19:29 von Seebär erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: ls, Shell