En este artículo, voy a escribir sobre la configuración de colores para la salida del comando ls en su bash cáscara. En Linux, ls es uno de los comandos básicos y más utilizados en nuestras tareas de administración diarias para listar el contenido de un directorio.
Si ha notado que el comando ls muestra diferentes colores para los directorios y archivos, eso es lo que vamos a discutir aquí en este artículo para establecer y cambiar los colores deseados para el comando ls.
Colores ls predeterminados
Si está utilizando cualquier sistema operativo Linux como Ubuntu o CentOS, los terminales GUI predeterminados y el indicador de shell de la consola muestran los archivos en varios colores contextuales. Sin embargo, es posible que deba agregar color al comando ls si una máquina que no admite listas de directorios de colores de forma predeterminada ls --color
.
Ejecute los siguientes comandos para mostrar los colores predeterminados de los directorios y archivos de su sistema.
$ ls
$ ls -al /tmp
$ ls -al --color /tmp
También puede utilizar los siguientes comandos para comprobar cómo se asignan los colores.
$ dircolors
$ echo $LS_COLOR

Aquí puede ver una larga lista de tipos de archivos y códigos numéricos del esquema de colores predeterminado que le explicaremos cómo puede crearlo usted mismo.
Activar / desactivar colores para el comando ls
Los colores de la salida del comando ls se definen en bash como alias. Ejecute la combinación de los siguientes alias y el comando grep para encontrar el bash alias de shell utilizados para la visualización en color.
$ alias | grep ls
Ahora ejecute los siguientes comandos para eliminar el alias con el comando unalias.
$ unalias ls
O simplemente ejecute lo siguiente es para apagar los colores.
$ ls --color=none

Puede ver en la captura de pantalla que después de eliminar el alias, la salida del comando ls es unicolor.
Ahora, para habilitar los colores, asigne de nuevo el alias usando el siguiente comando.
$ alias ls="ls --color=auto"

Puede ver en la captura de pantalla que después de eliminar el alias, la salida del comando ls es unicolor.
Ahora, para habilitar los colores, asigne nuevamente el alias usando el siguiente comando.
$ alias ls="ls --color=auto"
Esquema de código de colores predeterminado
En el proceso para ensamblar su lista de tipos de archivos y colores, necesitamos especificar tantos como desee en la forma filetype = color, separando cada uno con dos puntos (:).
A continuación se muestra la lista de esquemas de colores con la configuración predeterminada.
● Sin color (blanco): archivo o texto sin nombre de archivo (por ejemplo, permisos en la salida de ls -l)
● Azul negrita: directorio
● Cian negrita: enlace simbólico
● Verde negrita: archivo ejecutable
● Rojo negrita: archivo de almacenamiento
● Magenta audaz: archivo de imagen, video, gráfico, etc. o puerta o enchufe
● Cyan: archivo de audio
● con fondo negro: tubería (también conocido como FIFO)
● Negrita con fondo negro: dispositivo de bloque o dispositivo de carácter
● Negrita con fondo negro: enlace simbólico huérfano o archivo faltante
● Sin color con fondo rojo: archivo set-user-ID
● Negro con fondo: archivo set-group-ID
● Negro con fondo: archivo con capacidad
● Blanco con fondo azul: directorio fijo
● Azul con fondo verde: directorio en el que se puede escribir otro
● Negro con fondo verde: directorio fijo y en el que se pueden escribir otras personas.
Para armar su propia lista, necesitamos conocer la lista de códigos de color y códigos de tipo de archivo que usan los mismos códigos de color numéricos como en su indicador Bash.
Puede encontrar a continuación la lista de códigos de color para el texto de primer plano:
● Negro: 30
●: 31
● Verde: 32
●: 33
● Azul: 34
● Morado: 35
● Cian: 36
● Blanco: 37
Cambiar colores personalizados ls
Para configurar colores personalizados para el ls command
, esto también se puede hacer actualizando los alias a la ~/.bash_profile
o ~/.bashrc
archivo editando el archivo usando cualquier editor de texto como vim
.
Antes de realizar cambios en bashrc, primero haga una copia de seguridad de este archivo copiando sus configuraciones en cualquier otro archivo.
$ cp .bashrc .bashrc2
Si comete un error o tiene problemas, puede reemplazar su archivo .bashrc escribiendo:
$ cp .bashrc2 .bashrc
Ahora abramos el archivo bashrc usando el comando vim.
$ vim .bashrc
.bashrc
## Colorize the ls output ##
alias ls="ls --color=auto"
## Use a long listing format ##
alias ll="ls -la"
## Show hidden files ##
alias l.='ls -d .* --color=auto'

Una vez que haya realizado cambios en el archivo baschrc, guárdelo y ejecute el siguiente comando para actualizar su bash cambios.
$ source .bashrc
Vamos por example vea cómo funciona esto en los siguientes pasos. Cuando desee cambiar el color de los directorios del azul en negrita predeterminado a negrita, ejecute los siguientes comandos en su terminal como se muestra.
$ LS_COLORS=”di=1;33”

Puede agregar un nuevo par clave-valor al final de la Variable de entorno LS_COLORS o simplemente Edite el valor de una clave específica.
Para example, di = 0; 33, aquí di significa que el color afectará solo a los directorios, mientras que 0 representa que es un color normal y 33 representa que el color es.
Si desea mantener una fuente en negrita para los directorios, el código de color debe ser di = 1; 33 mientras que 1 representa la fuente en negrita.
Más ejemplos
Juguemos usando los siguientes comandos para cambiar los colores de sus carpetas y algunas extensiones de archivo específicas.
$ export LS_COLORS=$LS_COLORS:"*.txt=01;36":"*.mp3=01;31"

Aquí puede ver que hemos actualizado el color de los archivos .txt a Cyan y de los archivos con extensión .mp3 a.
Ejecutemos otro comando a continuación para establecer el color de sus directorios en Morado.
$ export LS_COLORS="di=0;35"

Una vez que esté familiarizado con la configuración de colores personalizados, puede hacer que estos cambios sean permanentes agregándolos a sus archivos dot bashrc ubicados en el directorio de inicio de sus usuarios.
Conclusión
Al final de este tutorial, debe estar familiarizado con los colores del comando ls, lo que representan y cómo podemos habilitarlos o deshabilitarlos y cambiarlos para nuestra propia conveniencia. Configurar su LS_COLORS hace que sus listados ls se vean más bonitos, lo que le ayuda a identificar archivos mientras navega por un sistema de archivos.