GNU/Linux >> Linux Esercitazione >  >> Linux

Quali sono le cause di questo sfondo verde nell'output di Ls?

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 =nessuno
    • 01 =grassetto
    • 04 =sottolineatura
    • 05 =lampeggiare
    • 07 =inverso,
    • 08 =nascosto
  • FOREGROUND_COLOR indica il colore di primo piano:

    • 30 =nero
    • 31 =rosso
    • 32 =verde
    • 33 =giallo
    • 34 =blu,
    • 35 =magenta
    • 36 =ciano
    • 37 =bianco
  • BACKGROUND_COLOR indica i colori di sfondo:

    • 40 =nero
    • 41 =rosso
    • 42 =verde
    • 43 =giallo
    • 44 =blu,
    • 45 =magenta
    • 46 =ciano
    • 47 =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:

Correlati:Quali sono le principali differenze tra BSD e GNU/Linux userland?


Linux
  1. Quali sono le cause dell'invio di vari segnali?

  2. Cosa si intende per collegamento di Stdout e Stdin?

  3. Cosa c'è di vulnerabile in questo codice C?

  4. Cos'è questo dispositivo dm-0?

  5. Determina se l'output è stdout o stderr

Che cos'è "/dev/null 2&1" in Linux

Che cos'è /dev/null in Linux

Cosa indica questa statistica del processo?

Che terminale è questo?

Come ordinare questo output 1,10,11..2

Qual è questo indirizzo IP:169.254.169.254?