Domovská » jak » Jak změnit barvy adresářů a souborů v příkazu ls

    Jak změnit barvy adresářů a souborů v příkazu ls

    Pokud jste spustili ls příkaz Bash, zjistíte, že adresáře a soubory, které vidíte, jsou zbarveny podle typu. Můžete si přizpůsobit svůj vlastní barevný schéma tak, aby zvolil různé barvy textu, barvy pozadí a formátování jako tučné a podtržené.

    Jak to funguje

    Barevná schéma je uložena v proměnné LS_COLORS. Chcete-li zobrazit aktuální barevné schéma, můžete Bashovi říct, že vytiskne obsah proměnné:

    echo $ LS_COLORS

    Zobrazí se dlouhý seznam typů souborů a číselných kódů. Vysvětlíme, jak si sami vytvořit takový seznam.

    Předtím, než s tím budete hrát, doporučujeme uložit aktuální obsah proměnné LS_COLORS na jinou proměnnou. To vám umožní rychle obnovit výchozí nastavení bez odhlášení ze shellu a přihlášení zpět nebo zavření a znovu otevření okna terminálu. Chcete-li uložit aktuální obsah proměnné LS_COLORS na novou proměnnou s názvem ORIGINAL, spusťte:

    ORIGINÁL = $ LS_COLORS

    K odstranění změn a obnovení výchozích barev můžete kdykoli spustit následující příkaz:

    LS_COLORS = $ ORIGINÁL

    Změny jsou vždy dočasné, dokud neupravíte soubor, aby byly vaše nové výchozí hodnoty. Vždy se můžete odhlásit a přihlásit nebo zavřít a znovu otevřít okno terminálu a obnovit výchozí nastavení barev. Jednoduše to však děláte jediným, rychlým příkazem.

    Jak nastavit vlastní barvy

    Proměnná LS_COLORS obsahuje seznam typů souborů spolu s přidruženými kódy barev. Výchozí seznam je dlouhý, protože určuje různé barvy pro různé typy souborů.

    Začněme základní příklad, abychom ukázali, jak to funguje. Řekněme, že chceme změnit barvu adresářů od výchozí tučné modré k tučné červené. Můžeme spustit následující příkaz:

    LS_COLORS = "di = 1; 31"

    The di = 1, 31 bit řekne ls adresáře (di) jsou (=) tučně (1;) Červené (31)..

    Jedná se ovšem o velmi jednoduchou proměnnou LS_COLORS, která definuje adresáře jako jednu barvu a ponechává každý jiný typ souboru jako výchozí barvu. Řekněme, že chceme, aby soubory s příponou .desktop byly také podtržené azurové barvy. Můžeme spustit následující příkaz:

    LS_COLORS = "di = 1: 31: *. Desktop = 4; 36"

    To říká ls adresáře (di) jsou (=) tučně (1;) Červené (31) a (:) jakýkoli soubor končit v .desktop (*.plocha počítače) je (=) zdůrazněno (4;) tyrkysová (36)..

    Jedná se o proces sestavování seznamu typů souborů a barev. Určete tolik, kolik chcete, ve formátu filetype = color, oddělením každé dvojtečky (:).

    Chcete-li sestavit svůj vlastní seznam, stačí znát seznam barevných kódů a kódů typů souborů. Používáte stejné číselné kódy barev, které používáte při změně barvy v příkazu Bash.

    Zde je seznam barevných kódů pro text v popředí:

    • Černá: 30
    • Modrá: 34
    • Cyan: 36
    • Zelená: 32
    • Fialová: 35
    • Červená: 31
    • Bílá: 37
    • Žlutá: 33

    Například jelikož žlutý text je barevným kódem 33, použijete di = 33 Chcete-li adresáře žlutě.

    Zde je seznam atributů barvy textu:

    • Normální text: 0
    • Tučný nebo světlý text: 1 (záleží na emulátoru terminálu.)
    • Dim Text: 2
    • Podtržený text: 4
    • Blikající text: 5 (Tato funkce nefunguje u většiny terminálových emulátorů.)
    • Obrácený text: 7 (Toto invertuje barvy popředí a pozadí, takže na bílém pozadí uvidíte černý text, pokud je aktuální text bílým textem na černém pozadí.)
    • Skrytý text: 8

    Při zadávání atributu nebo více než jednoho barevného kódu oddělte seznam kódů znakem středník (;). Nemusíte zadávat hodnotu 0 pro normální text, protože normální text se používá, když zde nezadáte žádný atribut.

    Například, protože tučný text je barva kód 1 a žlutý text je barva kód 33, byste použít di = 1; vytvořit adresáře žlutavě žluté. Můžete také zadat více než jeden atribut. Můžete například použít di = 1; 4; 33 vytvořit adresáře tučně, podtržené žluté.

    Zde je seznam kódů barvy pozadí:

    • Černé pozadí: 40
    • Modré pozadí: 44
    • Azurové pozadí: 46
    • Zelené pozadí: 42
    • Fialové pozadí: 45
    • Červené pozadí: 41
    • Bílé pozadí: 47
    • Žluté pozadí: 43

    Například, protože modré pozadí je barva kód 44, byste použít di = 44 použít modré pozadí pro adresáře. Můžete také kombinovat kód barvy pozadí, kód barvy popředí a tolik atributů, kolik chcete. Například, di = 1; 4; 33; 44 by vám dala tučný, podtržený žlutý text na modrém pozadí.

    Zde je seznam kódů typů souborů:

    • Directory: di
    • Soubor: fi
    • Symbolický odkaz: ln
    • Pojmenovaná trubka (FIFO): pi
    • Zásuvka: tak
    • Blokovat zařízení: bd
    • Znakové zařízení: cd
    • Osiřelý symbolický odkaz (odkazuje na soubor, který již neexistuje): nebo
    • Chybějící soubor (chybějící soubor, na který odkazuje symbolický odkaz na osiřelý): mi
    • Spouštěcí soubor (má oprávnění "x"): ex
    • * .extension: Libovolný soubor s koncovým rozšířením. Použijte například * .txt pro soubory končené v .txt, * .mp3 pro soubory končící v .mp3, * .desktop pro soubory končící v .desktop nebo cokoliv jiného, ​​co se vám líbí. Můžete určit co nejvíce různých přípon souborů.

    Určete tolik různých typů kódů typů souborů s tolika různými barvami, které chcete oddělit znakem:. Opakujte tento proces, abyste sestavili proměnnou LS_COLORS.

    Například řekněme, že chcete používat adresáře pro tučný fialový text, podtržený červený text pro spustitelné soubory a tučný zelený text na červeném pozadí pro soubory .mp3. Při sestavování kódů typů souborů a barevných kódů ze seznamu výše získáte:

    LS_COLORS = "di = 1; 35: ex = 4; 31: *. Mp3 = 1; 32; 41"

    Jak nastavit nové výchozí barvy

    Nyní máte vlastní proměnnou LS_COLORS, která funguje v aktuální relaci Bash. Pravděpodobně byste ale chtěli, aby byla trvalá, takže se automaticky používá při každé nové relaci Bash, aniž byste si to museli zapamatovat.

    Můžete nastavit vlastní proměnnou LS_COLORS - a jakoukoli jinou proměnnou typu Bash - přidáním ji do souboru .bashrc svého uživatelského účtu. Tento soubor je umístěn na ~ / .bashrc. Takže pokud je vaše uživatelské jméno bob, najdete ho na /home/bob/.bashrc. Existují i ​​jiné způsoby, jak nastavit proměnné prostředí, ale je to jednoduché.

    Nejprve otevřete tento soubor v preferovaném textovém editoru. Použijeme nano jako příklad, ale můžete použít vi, emacs nebo cokoli jiného, ​​co se vám líbí.

    nano ~ / .bashrc

    Přidejte vlastní proměnnou LS_COLORS na nový řádek na konci souboru, například:

    LS_COLORS = "di = 1; 35: ex = 4; 31: *. Mp3 = 1; 32; 41"

    Uložte soubor a ukončete jej. V nano stiskněte klávesy Ctrl + O a pak stiskněte klávesu Enter pro uložení a poté stiskněte klávesy Ctrl + X pro ukončení.

    Kdykoli spustíte novou relaci Bash, Bash přečte soubor .bashrc a automaticky nastaví proměnnou LS_COLORS. Chcete-li v budoucnu změnit barvy, vraťte se zpět do souboru .bashrc a upravte řádek LS_COLORS.

    Můžete také smazat pouze LS_COLORS = line, který jste přidali do souboru .bashrc, abyste znovu použili výchozí barvy. Pokud nenastavíte hodnotu LS_COLORS, Bash použije výchozí barvy.