Cómo habilitar los colores para la salida del comando ls

En este artículo, escribiré un artículo sobre la configuración de colores para la salida del comando ls en un shell bash. En Linux, ls es uno de los comandos básicos y más utilizados para listar contenidos de directorios en nuestras tareas diarias de administración.

Si ha notado que el comando ls muestra diferentes colores para directorios y archivos, en este artículo discutiremos cómo configurar y cambiar los colores deseados para el comando ls.

Color predeterminado de ls

Si está utilizando cualquier sistema operativo Linux (como Ubuntu o CentOS), el terminal GUI predeterminado y el shell de la consola mostrarán los archivos en varios colores contextuales. Sin embargo, si una computadora que no admite listados de catálogo de colores de manera predeterminada usa el siguiente comando, es posible que deba agregar colores al comando ls:ls --color.

Ejecute el siguiente comando para mostrar los colores predeterminados de cualquier directorio y archivo en el sistema.

$ ls
$ ls -al /tmp
$ ls -al --color /tmp

ls output

También puede usar el siguiente comando para verificar cómo se asignan los colores.

$ dircolors
$ echo $LS_COLOR

dircolors

Aquí puede ver una larga lista de códigos digitales para tipos de archivos y esquemas de color predeterminados, y le explicaremos cómo crearlos usted mismo.

Activar/desactivar el color para el comando ls

La salida de color del comando ls se define como un alias en bash. Ejecute la siguiente combinación de alias y comando grep para encontrar el alias de shell bash para la visualización en color.

$ alias | grep ls

Ahora, ejecute el siguiente comando para eliminar el alias usando el comando unalias.

$ unalias ls

O simplemente ejecuta lo siguientePor favor cierracolor.

$ ls --color=none

Turn off ls color

Puede ver en la captura de pantalla que después de eliminar el alias, la salida del comando ls es monocromática.

ahora aHabilitar color, Utilice el siguiente comando para asignar un alias.

$ alias ls='ls --color=auto'

Turn on ls color

Puede ver en la captura de pantalla que después de eliminar el alias, la salida del comando ls es monocromática.

Ahora, para habilitar el color, use el siguiente comando para asignar un alias.

$ alias ls='ls --color=auto'

Esquema de código de color predeterminado

En el proceso de ensamblar el tipo de archivo y la lista de colores, necesitamos especificar cualquier número en forma de tipo de archivo = color, separados por dos puntos (:).

La siguiente es una lista de esquemas de color establecidos de forma predeterminada.

?Incoloro (blanco): texto de nombre de archivo o no archivo (por ejemplo, permisos en la salida de ls -l) ?Negrita azul: directorio ?Cian negrita azul: enlace simbólico ?Negrita verde: archivo ejecutable ?Negrita roja: archivos de almacenamiento ? Rojo magenta en negrita: archivos de imagen, videos, gráficos, etc. O puerta o enchufe ? Cyan: ¿archivos de audio? Fondo negro: tubería (AKA FIFO) ? Fondo negro en negrita: ¿dispositivo de bloque o dispositivo de caracteres? Negrita con fondo negro: ¿enlaces simbólicos aislados o archivos faltantes? Incoloro, con fondo rojo: archivo set-user-ID ? Negro, con fondo: archivo set-group-ID ? Negro, con fondo: archivo con función ? Blanco con fondo azul: directorio fijo ?Azul con fondo verde: otros directorios grabables ?Fondo negro y verde: directorios fijos y otros directorios grabables

Para armar su propia lista, necesitamos conocer la lista de códigos de color y los códigos de tipo de archivo, que usan los mismos códigos de color numéricos que en el aviso de 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 ? Púrpura: 35 ? cian: 36 ? Blanco: 37

Cambiar el color personalizado de ls

Para establecer un color personalizadols command, También puede actualizar el alias a~/.bash_profileCualquiera~/.bashrcEdite el archivo editando el archivo con cualquier editor de textovim.

Antes de realizar cambios en bashrc, haga una copia de seguridad del archivo copiando su configuración en cualquier otro archivo.

$ cp .bashrc .bashrc2

Si comete un error o tiene problemas, puede reemplazar el archivo .bashrc escribiendo:

$ cp .bashrc2 .bashrc

Ahora, abra 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'

bashrc ls color settings

Después de realizar cualquier cambio en el archivo baschrc, guarde el archivo y ejecute el siguiente comando para actualizar los cambios de bash.

$ source .bashrc

Por ejemplo, vea cómo funciona en los siguientes pasos. Si desea cambiar el color del directorio del azul negrita predeterminado a negrita, ejecute el siguiente comando en la terminal como se muestra en la figura.

$ LS_COLORS=?di=1;33?

ls example changes color to yellow

Puede agregar nuevos pares clave-valor al finalVariable de entorno LS_COLORSO simplemente edite el valor de una clave específica.

Por ejemplo, di = 0; 33, donde di significa que el color solo afecta al catálogo, 0 significa color normal y 33 significa color normal.

Si desea mantener la fuente en negrita para el catálogo, el código de color debe ser di = 1; 33, y 1 significa la fuente en negrita.

Más ejemplos

Usemos los siguientes comandos para divertirnosCambiar el colorCarpetas y algunas extensiones de archivo específicas.

$ export LS_COLORS=$LS_COLORS:"*.txt=01;36":"*.mp3=01;31"

Change ls color

Aquí puede ver que hemos actualizado el color del archivo .txt a Cian y el color del archivo de la extensión .mp3 a.

Ejecutemos otro comando a continuación para establecer el color del directorio en "púrpura".

$ export LS_COLORS="di=0;35"

Change ls output color to purple

Una vez que esté familiarizado con la configuración de colores personalizados, puede agregar estos cambios al archivo dot bashrc ubicado en el directorio de inicio del usuario para que estos cambios sean permanentes.

en conclusión

Al final de este tutorial, debería estar familiarizado con los colores del comando ls, qué significan y cómo podemos habilitarlos o deshabilitarlos y cambiarlos para mayor comodidad. Establecer LS_COLORS puede hacer que la lista ls se vea más hermosa, lo que lo ayuda a identificar los archivos al atravesar el sistema de archivos.