Homepage » hogyan kell » A könyvtárak és fájlok színeinek módosítása az ls parancsban

    A könyvtárak és fájlok színeinek módosítása az ls parancsban

    Ha a ls A Bash parancsban észreveheted, hogy a megjelenített könyvtárak és fájlok színük szerint színeződnek. Testreszabhatja saját színsémáját, hogy kiválassza a különböző szöveges színeket, a háttérszínt és a formázást, mint a merész és aláhúzott.

    Hogyan működik ez

    A színsémát az LS_COLORS változóban tárolja. Az aktuális színséma megtekintéséhez meg lehet mondani a Bash-nek, hogy kinyomtassa a változó tartalmát:

    echo $ LS_COLORS

    A fájltípusok és a számkódok hosszú listáját láthatja. Elmagyarázzuk, hogyan hozzunk létre egy ilyen listát.

    Mielőtt ezzel játszanánk, javasoljuk, hogy az LS_COLORS változó aktuális tartalmát egy másik változóra mentse. Ez lehetővé teszi, hogy gyorsan visszaállítsa az alapértelmezett beállításokat anélkül, hogy kijelentkezne a héjból, és visszalépne, vagy bezárná és újra megnyitná a terminálablakot. Az LS_COLORS változó aktuális tartalmának az ORIGINAL nevű új változóra történő mentéséhez futtassa a következőt:

    EREDETI = $ LS_COLORS

    A módosítások visszavonásához és az alapértelmezett színek visszaállításához bármikor futtathatja a következő parancsot:

    LS_COLORS = $ EREDETI

    A módosítások mindig ideiglenesek, amíg nem szerkeszti a fájlt az új alapértelmezett értékek létrehozásához. A színek alapértelmezett beállításához való visszaállításához mindig kijelentkezhet és visszaválthatja vagy bezárhatja és újra megnyithatja a terminálablakot. Ez azonban egy egyszerű, gyors parancs segítségével könnyen elvégezhető.

    Egyéni színek beállítása

    Az LS_COLORS változó tartalmazza a fájltípusok listáját és a hozzájuk tartozó színkódokat. Az alapértelmezett lista hosszú, mert különböző színeket ad meg számos különböző fájltípushoz.

    Kezdjünk egy alapvető példát annak bemutatására, hogy ez hogyan működik. Tegyük fel, hogy szeretnénk megváltoztatni a könyvtárak színét az alapértelmezett vastag kéktől a vastag pirosig. Ezt a következő parancsot futtathatjuk:

    LS_COLORS = "di = 1; 31"

    A di = 1; 31 kicsit mondja ls a könyvtárak (di) vannak (=) félkövér (1;) piros (31).

    Ez azonban csak egy nagyon egyszerű LS_COLORS változó, amely a könyvtárakat egy színként definiálja, és minden más fájltípust alapértelmezett színként hagy. Tegyük fel, hogy a .desktop fájl kiterjesztésű fájlokat is aláhúzott cián színnel szeretnénk készíteni. Ezt a következő parancsot futtathatjuk:

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

    Ez azt mondja ls a könyvtárak (di) vannak (=) félkövér (1;) piros (31) és (:) minden .desktop (* .desktop) (=) aláhúzva (4;) cián (36).

    Ez a folyamat a fájltípusok és színek listájának összeállításához. Adja meg a kívánt mennyiséget a filetype = color formában, mindegyik kettőspont (:) karakterrel elválasztva.

    A saját lista összeállításához csak a színes kódok és a fájltípusok listáját kell tudnia. Ez ugyanazokat a numerikus színkódokat használja, amelyeket a Bash parancssor színének módosításakor használ.

    Íme az előtér szövegének színkódjai:

    • Fekete: 30
    • Kék: 34
    • Cyan: 36
    • Zöld: 32
    • Lila: 35
    • Piros: 31
    • Fehér: 37
    • Sárga: 33

    Például, mivel a sárga szöveg a 33 színkódot használja, használná di = 33 könyvtárakat készíthet.

    Íme a szöveges szín attribútumok listája:

    • Normál szöveg: 0
    • Félkövér vagy világos szöveg: 1 (A terminál emulátorától függ.)
    • Dim Szöveg: 2
    • Aláhúzott szöveg: 4
    • Villogó szöveg: 5 (Ez nem működik a legtöbb terminál emulátorban.)
    • Megfordított szöveg: 7 (Ez az előtér és a háttér színeit megfordítja, így a fekete szöveg fehér alapon jelenik meg, ha az aktuális szöveg fehér alapon fekete.)
    • Rejtett szöveg: 8

    Ha attribútumot vagy több színkódot ad meg, szétválasztja a kódlistát pontosvesszővel (;). A normál szöveghez 0-at nem kell megadni, mivel a normál szöveg akkor használható, ha itt nem ad meg attribútumot.

    Például, mivel a félkövér szöveg 1 színkód, a sárga szöveg pedig a 33-as színkód di = 1; 33 címkékkel félkövér sárga. Több attribútumot is megadhat. Például használhatja di = 1; 4; 33 a címkéket félkövér, aláhúzott sárga.

    Íme a háttérszínkódok listája:

    • Fekete háttér: 40
    • Kék háttér: 44
    • Cián háttér: 46
    • Zöld háttér: 42
    • Lila háttér: 45
    • Piros háttér: 41
    • Fehér háttér: 47
    • Sárga háttér: 43

    Például, mivel a kék háttér a 44-es színkód, akkor azt használni szeretné di = 44 kék háttér használata a könyvtárakhoz. Kombinálhat egy háttérszínkódot, egy előtér színkódot, és annyi attribútumot, amennyit szeretne. Például, di = 1; 4; 33; 44 félkövér, aláhúzott sárga szöveg kék háttérrel.

    Íme a fájltípusok listája:

    • Címtár: di
    • Fájl: fi
    • Szimbolikus kapcsolat: ln
    • Megnevezett cső (FIFO): pi
    • Socket: így
    • Blokkoló eszköz: bd
    • Karaktereszköz: cd
    • Orphan Symbolic Link (egy olyan fájlra mutat, amely már nem létezik): vagy
    • Hiányzó fájl (hiányzó fájl, amelyet egy árva szimbolikus hivatkozás mutat): mi
    • Futtatható fájl (rendelkezik az „x” engedélyével): ex
    • * .extension: Bármely, a megadott kiterjesztéssel végződő fájl. Például a .txt-t használjuk a .txt-ben végződő fájlokhoz, * .mp3-hoz .mp3-ban végződő fájlokhoz, * .desktop a .desktop fájlban végződő fájlokhoz, vagy bármi máshoz. Megadhat annyi különböző fájlkiterjesztést, amennyit csak akar.

    Adjon meg annyi különböző típusú fájltípus-kódot, amennyit csak szeretne, különválasztva a: karaktert. Ismételje meg ezt a folyamatot az LS_COLORS változó összeállításához.

    Tegyük fel például, hogy merész, lila szöveget szeretne használni a könyvtárakhoz, aláhúzott piros szöveget a futtatható fájlokhoz, és merész zöld szöveget a piros háttéren .mp3 fájlokhoz. A fájltípusok és a színes kódok összeállítása a fenti listákból:

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

    Az új alapértelmezett színek beállítása

    Most már van egy egyéni LS_COLORS változó, amely az aktuális Bash munkamenetben működik. Valószínűleg azonban azt szeretné, hogy állandó legyen, így automatikusan használják, amikor új Bash-munkamenetet indít el anélkül, hogy ezt meg kellene emlékezni.

    Beállíthatja az egyéni LS_COLORS változóját és bármely más olyan Bash változót, amelyet szeretne hozzáadni a felhasználói fiók .bashrc fájljához. Ez a fájl a következő helyen található: ~ / .bashrc. Tehát, ha a felhasználóneve bob, akkor a /home/bob/.bashrc címen találja meg. Vannak más módszerek is a környezeti változók beállítására, de ez egy egyszerű.

    Először nyissa meg ezt a fájlt a kívánt szövegszerkesztőben. A nano-t példaként fogjuk használni, de a vi, emacs vagy bármi más, amit szeretnél.

    nano ~ / .bashrc

    Adja hozzá az egyéni LS_COLORS változót egy új sorhoz a fájl végén, így:

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

    Mentse el a fájlt és lépjen ki. A nano-ban nyomja meg a Ctrl + O billentyűt, majd nyomja meg az Entert a mentéshez, majd nyomja meg a Ctrl + X billentyűt a kilépéshez.

    Amikor új Bash-munkamenetet indít, a Bash elolvassa a .bashrc fájlt és automatikusan beállítja az LS_COLORS változót. A színek megváltoztatásához menjen vissza a .bashrc fájlba, és szerkessze az LS_COLORS sort.

    Csak törölheti a LS_COLORS = a .bashrc fájlhoz hozzáadott sor, hogy újra használhassa az alapértelmezett színeket. Ha nem állítja be az LS_COLORS értéket, a Bash az alapértelmezett színeket használja.