GNU/Linux >> Tutoriales Linux >  >> Linux

¿Qué causa este fondo verde en la salida Ls?

Hay dos directorios mostrados por 'ls'. Normalmente, los directorios en cualquier lugar son azules sobre fondo negro. Pero el primero es azul sobre verde e imposible de leer. ¿Por qué es esto? ¿Cómo hacer que sea azul sobre negro, o al menos algo claro sobre algo oscuro?

Esto está en Ubuntu 12.04, usando bash en Gnome Terminal. En Konsole, el azul es un poco más oscuro y es posible leerlo, aunque podría ser mucho mejor.

Respuesta aceptada:

Además de colorear archivos según su tipo (turquesa para archivos de audio, rojo brillante para archivos comprimidos y archivos comprimidos, y púrpura para imágenes y videos), ls también colorea archivos y directorios según sus atributos:

  • El texto negro con fondo verde indica que un directorio puede ser escrito por otros, además del usuario y grupo propietario, y tiene el bit fijo establecido (o+w, +t ).
  • El texto azul con fondo verde indica que otros usuarios y grupos propietarios pueden escribir en un directorio, y no tener el sticky bit establecido (o+w, -t ).

Stephano Palazzo en Ask Ubuntu ha hecho esta imagen muy instructiva sobre los diferentes colores de atributos:

Como señaló Terdon, la configuración de color se puede modificar a través de dircolors . Se puede acceder a una lista de las diferentes configuraciones de color con dircolors --print-database .

Cada línea de salida, como BLK 40;33;01 , es de la forma:

[TARGET] [TEXT_STYLE];[FOREGROUND_COLOR];[BACKGROUND_COLOR]
  • TARGET indica el destino de la regla de coloración

  • TEXT_STYLE indica el estilo del texto:

    • 00 =ninguno
    • 01 =negrita
    • 04 =guión bajo
    • 05 =parpadear
    • 07 =reversa,
    • 08 =oculto
  • FOREGROUND_COLOR indica el color de primer plano:

    • 30 =negro
    • 31 =rojo
    • 32 =verde
    • 33 =amarillo
    • 34 =azul,
    • 35 =magenta
    • 36 =cian
    • 37 =blanco
  • BACKGROUND_COLOR indica los colores de fondo:

    • 40 =negro
    • 41 =rojo
    • 42 =verde
    • 43 =amarillo
    • 44 =azul,
    • 45 =magenta
    • 46 =cian
    • 47 =blanco

Los campos pueden omitirse comenzando desde la derecha, por ejemplo, .tar 01;31 significa negrita y rojo.

XTerm y la mayoría de los demás emuladores de terminales modernos admiten 256 colores.

Un código de color de primer plano de 256 colores XTerm tiene el formato:

38;5;[FOREGROUND_COLOR]

Un código de color de fondo de 256 colores XTerm tiene la forma:

48;5;[BACKGROUND_COLOR]

donde ambos FOREGROUND_COLOR y BACKGROUND_COLOR es un número del rango 0-255. En la siguiente captura de pantalla se muestra una lista completa de códigos de color para los modos de 16 y 256 colores:

Relacionado:¿Cuáles son las principales diferencias entre BSD y GNU/Linux userland?


Linux
  1. ¿Qué causa que se envíen varias señales?

  2. ¿Qué significa conectar Stdout y Stdin?

  3. ¿Qué significa esta advertencia?

  4. ¿Qué hace este script sh si se ejecuta?

  5. ¿Es así como se ve un ataque SSH de fuerza bruta?

¿Qué es '/dev/null 2&1' en Linux?

¿Qué es /dev/null en Linux?

¿Qué indica esta estadística de proceso?

¿Qué terminal es esta?

Determinar si la salida es stdout o stderr

¿Qué genera pwd?