Ci sono due directory mostrate da 'ls'. Normalmente le directory ovunque sono blu su sfondo nero. Ma il primo è blu su verde e impossibile da leggere. Perchè è questo? Come renderlo blu su nero, o almeno qualcosa di chiaro su qualcosa di scuro?
Questo è su Ubuntu 12.04, usando bash in Gnome Terminal. In Konsole, il blu è leggermente più scuro e si può leggere, anche se potrebbe essere molto migliore.
Risposta accettata:
Oltre a colorare i file in base al loro tipo (turchese per i file audio, rosso brillante per archivi e file compressi e viola per immagini e video), ls
colora anche i file e le directory in base ai loro attributi:
- Il testo nero con sfondo verde indica che una directory è scrivibile da altri, a parte l'utente proprietario e il gruppo, e ha il bit permanente impostato (
o+w, +t
). - Il testo blu con sfondo verde indica che una directory è scrivibile da altri a parte l'utente proprietario e il gruppo, e non avere lo sticky bit impostato (
o+w, -t
).
Stephano Palazzo su Ask Ubuntu ha realizzato questa immagine molto istruttiva sui diversi colori degli attributi:
Come sottolineato da Terdon, le impostazioni del colore possono essere modificate tramite dircolors
. È possibile accedere a un elenco delle diverse impostazioni di colorazione con dircolors --print-database
.
Ogni riga di output, come BLK 40;33;01
, ha la forma:
[TARGET] [TEXT_STYLE];[FOREGROUND_COLOR];[BACKGROUND_COLOR]
-
TARGET
indica il target per la regola di colorazione -
TEXT_STYLE
indica lo stile del testo:00
=nessuno01
=grassetto04
=sottolineatura05
=lampeggiare07
=inverso,08
=nascosto
-
FOREGROUND_COLOR
indica il colore di primo piano:30
=nero31
=rosso32
=verde33
=giallo34
=blu,35
=magenta36
=ciano37
=bianco
-
BACKGROUND_COLOR
indica i colori di sfondo:40
=nero41
=rosso42
=verde43
=giallo44
=blu,45
=magenta46
=ciano47
=bianco
I campi possono essere omessi a partire da destra, quindi ad esempio .tar 01;31
significa grassetto e rosso.
XTerm e la maggior parte degli altri moderni emulatori di terminale supportano 256 colori.
Un codice colore di primo piano a 256 colori XTerm è nel formato:
38;5;[FOREGROUND_COLOR]
Un codice colore di sfondo XTerm a 256 colori è nel formato:
48;5;[BACKGROUND_COLOR]
dove entrambi FOREGROUND_COLOR
e BACKGROUND_COLOR
è un numero compreso tra 0 e 255. Un elenco completo dei codici colore per le modalità colore 16 e 256 è mostrato nello screenshot seguente: