Hur man Ändrar Färger på Kataloger och Filer i ls-Kommandot

0
395

Om du har kört kommandot ls i Bash, kommer du att märka att de kataloger och filer som du ser är färglagd enligt deras typ. Du kan anpassa dina egna färger att välja olika sms: a färger, bakgrund, färger, och formatering som fet och understruken.

Hur Det Fungerar

Färgskalan är lagrade i LS_COLORS variabel. För att visa din aktuella färgschema, kan du berätta Bash för att skriva ut innehållet i variabel:

echo $LS_COLORS

Du kommer att se en lång lista över filtyper och antalet koder. Vi kommer att förklara hur man skapar en lista som denna själv.

Innan du spelar runt med detta, rekommenderar vi att spara den aktuella innehållet i LS_COLORS variabel till en annan variabel. Detta gör att du snabbt kan återställa standardinställningarna utan att logga ut ur skalet och logga in, eller att stänga och öppna terminal-fönstret. För att spara det aktuella innehållet i LS_COLORS variabel till en ny variabel som heter ORIGINAL, kör:

URSPRUNGLIGA=$LS_COLORS

När som helst kan du köra följande kommando om du vill ångra dina ändringar och återställa standard färger:

LS_COLORS=$ORIGINAL

Dina ändringar är alltid tillfällig tills du redigerar en fil för att göra dem till dina nya standardvärden. Du kan alltid logga ut och logga in igen eller stäng och öppna ett terminalfönster för att återställa färgerna till standardinställning. Dock, detta gör att det är lätt att göra så med ett enda, snabbt kommandot.

Ange Anpassade Färger

Den LS_COLORS variabel innehåller en lista över filtyper som tillsammans med tillhörande färgkoder. Den förvalda listan är lång eftersom det anger olika färger för ett antal olika filtyper.

Låt oss börja med ett grundläggande exempel för att visa hur detta fungerar. Låt oss säga att vi vill ändra färgen på kataloger från standard fet blå till fet röd. Vi kan köra följande kommando för att göra så:

LS_COLORS=”di=1;31″

Di=1;31 bitars berättar ls som kataloger (di) ( = ) fet (1;) röd (31).

Detta är dock bara en mycket enkel LS_COLORS variabel som definierar kataloger som en färg och lämnar varje annan typ av fil som standard färg. Låt oss säga att vi vill göra filer med .desktop-file extension en understruken cyan färg, liksom. Vi kan köra följande kommando för att göra så:

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

Här berättar ls som kataloger (di) ( = ) fet (1;) röd (31) och (:) någon fil som slutar på .skrivbordet (*.skrivbordet) ( = ) betonas (4;) cyan (36).

Detta är processen för att sätta ihop din lista över fil-typer och färger. Ange hur många du vill i form filetype=färg, separera dem med ett kolon (:) karaktär.

RELATERAD ARTIKELHur man kan Anpassa (och Färglägga) Din Bash-Prompten

Att sätta ihop en egen lista, du behöver bara veta listan av färg koder och filtyp koder. Detta använder samma numeriska färg koder som du använder när du ändrar färg på din Bash-prompten.

Här är listan över färgkoder för förgrund text:

  • Svart: 30
  • Blå: 34
  • Cyan: 36
  • Grön: 32
  • Lila: 35
  • Red: 31
  • Vit: 37
  • Gul: 33

Till exempel, eftersom gul text är en färg-kod 33, skulle du använda di=33 för att göra kataloger som gula.

Här är listan över sms: a färg attribut:

  • Normal Text: 0
  • Fet eller Ljus Text: 1 (Det beror på terminal emulator.)
  • Dim Text: 2
  • Understruken Text: 4
  • Blinkande Text: 5 (Detta fungerar inte i de flesta terminalemulatorer.)
  • Omvänd Sms: a: 7 (Detta inverterar förgrunds-och bakgrundsfärger, så ser du svart text på en vit bakgrund om den nuvarande texten är vit text på en svart bakgrund.)
  • Dold Text: 8

När du anger ett attribut eller mer än en färg kod, separata listan med koder med ett semikolon (;) karaktär. Du behöver inte ange 0 för normal text, vanlig text används när du inte ange ett attribut här.

Till exempel, eftersom fet text är en färg-kod 1 och gul text är en färg-kod 33, skulle du använda di=1;33 för att göra kataloger fet gul. Du kan också ange fler än ett attribut. Du kan till exempel använda di=1;4;33 för att göra kataloger fet, understruken gul.

Här är listan över bakgrundsfärg koder:

  • Svart bakgrund: 40
  • Blå bakgrund (blue background: 44
  • Cyan bakgrund: 46
  • Grön bakgrund: 42
  • Lila bakgrund: 45
  • Röd bakgrund: 41
  • Vit bakgrund: 47
  • Gul bakgrund: 43

Till exempel, eftersom en blå bakgrund är färg-kod 44, skulle du använda di=44 att använda en blå bakgrund för kataloger. Du kan också kombinera en bakgrundsfärg kod, en förgrundsfärg kod, och så många attribut som du vill. Till exempel, di=1;4;33;44 skulle ge dig fet, understruken gul text på blå bakgrund.

Här är listan över filtyp koder:

  • Katalog: di
  • Fil: fi
  • Symbolisk Länk: ln
  • Namngivna Röret (FIFU): pi
  • Uttag: så
  • Blockera-Enhet: bd
  • Tecken Enhet: cd
  • Anonyma Symbolisk Länk (pekar på en fil som inte längre finns): eller
  • Saknad Fil (en fil som saknas för att ett anonymt symboliska länken pekar till): mi
  • Körbar Fil (“x” – behörighet): ex
  • *.förlängning: En fil som slutar med en förlängning som du anger. Använd till exempel *.txt-format för filer som slutar på .txt, *.mp3-till filer som slutar på .mp3, *.skrivbordet för filer som slutar på .skrivbordet, eller något annat du gillar. Du kan ange så många olika filtillägg som du vill.

Ange så många olika typer av fil typ koder med så många olika färger som du gillar, separerade med : karaktär. Upprepa denna process för att montera din LS_COLORS variabel.

Till exempel, låt oss säga att du vill använda fet lila text för kataloger, understrukna med röd text för körbara filer, och fet grön text på röd bakgrund .mp3-filer. Att sätta ihop den filtyp koder och färg koder från listorna ovan, skulle du få:

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

Hur man Ställer in Din Nya Standard Färger

Du har nu en egen LS_COLORS variabel som fungerar i den aktuella Bash session. Men du vill förmodligen göra det permanent så att den används automatiskt varje gång du startar ett nytt Bash session utan att du behöver komma ihåg detta.

Du kan ställa in dina egna LS_COLORS variabel—och alla andra Bash-variabel som du vill—genom att lägga till den till ditt användarkonto .bashrc fil. Denna fil ligger på ~/.bashrc. Så, om ditt användarnamn är bob, du hittar det på /home/bob/.bashrc. Det finns andra sätt att sätta miljövariabler, men det är en enkel en.

För det första öppnar den här filen på din föredragna texteditor. Vi kommer att använda nano här som ett exempel, men du kan använda vi, emacs, eller något annat du gillar.

nano ~/.bashrc

Lägg till din egen LS_COLORS variabel till en ny rad i slutet av filen, så här:

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

Spara filen och avsluta. I nano, tryck på Ctrl+O och tryck sedan på Enter för att spara, tryck sedan på Ctrl+X för att avsluta.

När du startar ett nytt Bash session, Bash kommer att läsa den .bashrc fil och automatiskt ställa in din LS_COLORS variabel. Att byta färger i framtiden, gå tillbaka till din .bashrc fil och redigera LS_COLORS linje.

Du kan också bara ta bort LS_COLORS= linje som du har lagt till din .bashrc filen du vill använda som standard färger igen. Om du inte sätta LS_COLORS värde, Bash kommer att använda förvalda färger.