So Ändern Sie die Farben von Verzeichnissen und Dateien in der ls-Befehl

0
909

Wenn Sie haben, führen Sie den ls-Befehl in der Bash, werden Sie feststellen, dass die Verzeichnisse und Dateien, die Sie sehen, sind eingefärbt entsprechend Ihrer Art. Sie können Ihre eigenen Farbschema zu wählen, verschiedene text Farben, hintergrund-Farben und Formatierungen wie Fett und Unterstrichen.

Wie Das Funktioniert

Das Farbschema wird gespeichert in der variable LS_COLORS. Zum anzeigen Ihres aktuellen Farbschema, können Sie sagen, die Bash zu drucken, den Inhalt der Variablen an:

echo $LS_COLORS

Sie werden sehen, eine lange Liste von Datei-Typen und-codes. Wir werden erklären, wie man erstellen Sie eine Liste wie diese selbst.

Bevor Sie spielen, um mit diesem, wir empfehlen das speichern der aktuellen Inhalte der LS_COLORS variable in eine andere variable. Dies ermöglicht es Ihnen, schnell die Standard-Einstellungen wiederherstellen ohne Anmeldung aus der Schale und erneut anzumelden, oder dem schließen und erneuten öffnen das terminal-Fenster. Speichern Sie den aktuellen Inhalt der LS_COLORS variable in eine neue variable mit dem Namen ORIGINAL, ausgeführt:

ORIGINAL=$LS_COLORS

Zu jeder Zeit können Sie den folgenden Befehl ausführen, machen Sie Ihre änderungen rückgängig und wiederherstellen der Standard-Farben:

LS_COLORS=$ORIGINAL

Ihre änderungen sind immer nur vorübergehend, bis Sie eine Datei Bearbeiten, um Sie Ihrem neuen Vorgaben. Sie können sich immer Abmelden, und wieder anmelden, oder schließen und öffnen Sie ein terminal-Fenster, um die Farben wiederherzustellen, um Ihre default-Einstellung. Jedoch, dies macht es einfach zu tun, mit einem einzigen, kurzen Befehl.

Wie Legen Sie Benutzerdefinierte Farben

Die LS_COLORS variable enthält eine Liste von Dateitypen, die zusammen mit den dazugehörigen Farbcodes. Die default-Liste ist lang, denn es gibt verschiedene Farben für eine Reihe von verschiedenen Datei-Typen.

Beginnen wir ein einfaches Beispiel um zu demonstrieren, wie dies funktioniert. Lassen Sie uns sagen, wir wollen das ändern der Farbe von Verzeichnissen, die von der default-bold blau und Fett und rot. Wir können den folgenden Befehl ausführen:

LS_COLORS=”di=1;31″

Die di=1;31 etwas sagt ls, dass Verzeichnisse (di) ( = ) Fett (1;) rot (31).

Dies ist jedoch nur eine sehr einfache LS_COLORS variable, die definiert Verzeichnisse als einer Farbe und lässt jeden anderen Dateityp als Standard Farbe. Sagen wir, wir wollen, um Dateien mit der .desktop Datei-Endung ein Unterstrich cyan Farbe, als auch. Wir können den folgenden Befehl ausführen:

LS_COLORS=”di=1:31:*.desktop=4;36″

Dies sagt ls, dass Verzeichnisse (di) ( = ) Fett (1;) rot (31) und (:) eine Datei endet in .desktop (*.desktop) ( = ) Unterstrichen (4;) cyan (36).

Dies ist der Prozess für die Montage Ihrer Liste der Datei-Typen und Farben. Geben Sie so viele wie Sie möchten in das Formular filetype=Farbe, trennt jeweils mit einem Doppelpunkt (:).

VERWANDTE ARTIKELAnpassen (und Kolorieren) Ihre Bash-Eingabeaufforderung

Montieren Sie Ihre eigene Liste, Sie brauchen nur zu wissen, die Liste der Farb-codes und Datei-Typ-codes. Dieser verwendet den gleichen numerischen Farbcodes verwenden Sie beim ändern der Farbe in Ihre Bash-Eingabeaufforderung.

Hier ist die Liste der Farb-codes für text im Vordergrund:

  • Schwarz: 30
  • Blau: 34
  • Cyan: 36
  • Grün: 32
  • Lila: 35
  • Rot: 31
  • Weiß: 37
  • Gelb: 33

Zum Beispiel, seit yellow text color code 33, die Sie verwenden würden, di=33, um Verzeichnisse gelb.

Hier ist die Liste der text-Farbe-Attribute:

  • Normaler Text: 0
  • Fett-oder Hellen Text: 1 (abhängig von den terminal-emulator.)
  • Dim Text: 2
  • Unterstrichener Text: 4
  • Blinkender Text: 5 (Dies funktioniert nicht in den meisten terminal-Emulatoren.)
  • Umgekehrt Text: 7 (Dies kehrt die Vordergrund-und Hintergrundfarben, so dass Sie sehen Sie schwarzen text auf einem weißen hintergrund, wenn der aktuelle text ist weißer text auf einem schwarzen hintergrund.)
  • Hidden Text: 8

Bei der Angabe eines Attributs oder mehr als eine Farbe-code, trennen Sie die Liste der codes, die mit einem Semikolon (;) Zeichen. Sie brauchen nicht, geben Sie 0 für normalen text als normalen text verwendet wird, wenn Sie nicht angeben, ein Attribut hier.

Zum Beispiel, seit dem bold text color code 1 und dem gelben text ist Farb-code 33, die Sie verwenden würden, di=1;33, um Verzeichnisse Fett gelb. Sie können auch angeben, mehr als ein Attribut. Zum Beispiel, könnten Sie mit di=1;4;33, um Verzeichnisse Fett, Unterstrichen gelb.

Hier ist die Liste der hintergrund-codes:

  • Schwarzer hintergrund: 40
  • Blauer hintergrund: 44
  • Cyan hintergrund: 46
  • Grüner hintergrund: 42
  • Lila hintergrund: 45
  • Roter hintergrund: 41
  • Weißen hintergrund: 47
  • Gelber hintergrund: 43

Zum Beispiel, da eine Blaue hintergrund Farbe-code 44, die Sie verwenden würden, di=44 verwenden einen blauen hintergrund für Verzeichnisse. Sie können auch kombinieren eine Hintergrundfarbe code, eine Vordergrundfarbe code, und so viele Attribute, wie Sie möchten. Zum Beispiel, di=1;4;33;44 geben würde, Sie Fett, Unterstrichen, gelber text auf blauem hintergrund.

Hier ist die Liste der Datei-geben Sie die codes:

  • Verzeichnis: di
  • Datei: fi
  • Symbolischen Link: ln
  • Named Pipe (FIFO): pi
  • Sockel: so
  • Block-Gerät: bd
  • Character Device: cd
  • Orphan Symbolischen Link (verweist auf eine Datei nicht mehr existiert): oder
  • Fehlende Datei (eine fehlende Datei, die ein Waisenkind symbolische link verweist): mi
  • Ausführbare Datei (die “x” – Berechtigung): ex
  • *.Erweiterung: Jede Datei endet mit der Erweiterung, die Sie angeben. Zum Beispiel, verwenden Sie”*.txt Dateien mit der Endung .txt, *.mp3 (Dateien mit der Endung .mp3, *.desktop für Dateien mit der Endung .desktop, oder irgendetwas anderes, die Sie mögen. Sie können angeben, wie viele verschiedene Datei-Erweiterungen, wie Sie möchten.

Geben Sie so viele verschiedene Arten von Datei-geben Sie die codes, wie Sie in vielen verschiedenen Farben, wie Sie möchten, getrennt durch ein : – Zeichen. Wiederholen Sie diesen Vorgang für die Montage Ihres LS_COLORS variable.

Zum Beispiel, sagen wir, Sie möchten, verwenden Sie Fett lila text für Verzeichnisse, Unterstrichen, rot text für ausführbare Dateien, und Fett grüner text auf rotem hintergrund .mp3-Dateien. Die Zusammenstellung der Datei-Typ-codes und die Farbe, die codes aus der obigen Liste, würde man erhalten:

LS_COLORS=”di=1;35:ex=4;31:*.mp3=1;32;41″

Wie Sie Ihren Neuen Standard-Farben

Sie haben nun eine benutzerdefinierte variable LS_COLORS, dass die Funktionen in der aktuellen Bash-Sitzung. Allerdings werden Sie wahrscheinlich wollen, um Sie permanent zu machen, so wird es automatisch verwendet, wenn Sie starten Sie eine neue Bash-Sitzung, ohne dass Sie daran denken.

Sie können Ihre benutzerdefinierten variable LS_COLORS—und alle anderen Bash-variable, die Sie mögen—indem Sie es zu Ihrem Benutzerkonto .bashrc-Datei. Diese Datei befindet sich unter ~/.bashrc. Also, wenn Ihr Benutzername ist ” bob, du findest es unter /home/bob/.bashrc. Es gibt andere Wege, das setzen von Umgebungsvariablen, aber das ist eine einfache.

Erste, öffnen Sie diese Datei in Ihrem bevorzugten text-editor. Wir benutzen nano als Beispiel ist hier, aber Sie verwenden können, vi, emacs, oder irgendetwas anderes, die Sie mögen.

nano ~/.bashrc

Fügen Sie Ihre benutzerdefinierte LS_COLORS variable in eine neue Zeile am Ende der Datei, etwa so:

LS_COLORS=”di=1;35:ex=4;31:*.mp3=1;32;41″

Speichern Sie die Datei und beenden. In nano mit Strg+O und dann Enter speichern, und drücken Sie dann Strg+X um zu beenden.

Bei jedem start einer neuen Bash-Sitzung, Bash liest die .bashrc-Datei und automatisch Ihre LS_COLORS variable. Ändern Sie Ihre Farben in die Zukunft, gehen Sie zurück zu Ihrem .bashrc-Datei und Bearbeiten Sie die LS_COLORS Linie.

Sie können auch einfach löschen, die LS_COLORS= Zeile, die Sie Hinzugefügt, um Ihre .bashrc-Datei an den Standard-Farben wieder. Wenn Sie nicht die LS_COLORS Wert, Bash, verwenden die Standard-Farben.