Cómo cambiar los colores del comando ls en Linux

2
1495

El comando ls es uno de los más utilizado cuando trabajamos en la consola, observamos que no hemos dedicado ningún artículo a este excelente comando en el blog, por lo que traemos el tutorial de cómo cambiar los colores del comando ls. De igual manera, vamos a dar una explicación breve de este comando y su uso.

Vamos a basarnos en la información oficial y en varios métodos encontrado en la web con la misma finalidad, por lo que esté artículo va a ser una recopilación de varios métodos probados y funcionando realizados por diversos individuos.cambiar los colores del comando ls


¿Qué es el comando ls?

Citando a Wikipedia:

ls (del inglés list, cuya traducción es lista, listado o listar) es un comando de Linux y derivados que muestra un listado con los archivos y directorios de un determinado directorio. Los resultados se muestran ordenados alfabéticamente.

Los archivos y directorios cuyo nombre comienza con . (punto) no se muestran con la instrucción ls, por lo que se suelen denominar «archivos ocultos». La opción -a de ls inhibe este comportamiento, y muestra todos los archivos y subdirectorios, incluso los que comienzan con punto.

ls es una de las herramientas más básicas de los sistemas operativos Unix, por lo que forma parte del paquete GNU Coreutils.

Colores por defecto en los resultados de la orden ls

Por defecto, cada uno de los colores que arroja cuando ejecutamos el comando ls tienen un significado, ya que es la manera de clasificar los archivos según sus características.

  • Verde: Archivos ejecutables.
  • Negro: Archivo normal.
  • Azul: Directorios o carpetas.
  • Celeste: Enlace simbólico.
  • Rojo: Archivos comprimidos (.tar, .gz, .zip, .rpm).
  • Magenta: Archivos de imagen (.jpg, gif, bmp, png, tif)

Cómo cambiar los colores del comando ls

Opción 1: Modificando nuestro .bashrc

Para que los resultados del comando ls, sean de un color distinto al por defecto, debemos modificar nuestro archivo .bashrc, para ello debemos realizar los siguientes pasos:

Editar desde la terminal nuestro archivo .bashrc

nano $HOME/.bashrc

Añadir al final de archivo lo siguiente:

export PS1="\[$(tput setaf 1)\]\u@\h:\w $ \[$(tput sgr0)\]"

Cargar el archivo y disfrutar.

source ~/.bashrc

Puedes editar el export utilizando las siguientes configuraciones.

Listado de opciones:

  • tput bold – negrita
  • tput rev – colores invertidos
  • tput sgr0 – Restablecer todo
  • tput setaf {CODE}– Establecer foreground color, ver color {CODE}

CODE de colores:

Color {code}    Color
0   Black
1   Red
2   Green
3   Yellow
4   Blue
5   Magenta
6   Cyan
7   White

Opción 2: Otra forma de modificar nuestro .bashrc

Cómo hicimos en el paso anterior debemos modificar nuestro archivo .bashrc, para ello debemos realizar los siguientes pasos:

Editar desde la terminal nuestro archivo .bashrc

nano $HOME/.bashrc

Añadir al final de archivo lo siguiente:

alias ls='ls --color
LS_COLORS='di=1:fi=0:ln=31:pi=5:so=5:bd=5:cd=5:or=31:mi=0:ex=35:*.rpm=90'
export LS_COLORS

La primera línea hace que ls use el parámetro –color por defecto, el cuál le indica a ls que muestre sus salidas en función de la configuración de la variable.

La segunda línea representan el color que desea darle a los diversos archivos de linux, los mismos son representados por la siguiente denotación:

di = directorio
fi = archivo
ln = enlace simbolico
pi = archivo FIFO
so = archivo socket
bd = bloque (buffer) de archivos especiales
cd = carácter (sin búfer) de archivos especiales
or = enlace simbólico que apunta a un archivo inexistente (huérfano)
mi = archivo no existente al que apunta un enlace simbólico (visible cuando se escribe ls -l)
ex = fichero ejecutable

Los colores que acompañan a cada tipo de archivo son representados por números, para saber la conversión de cada color pueden ver la siguiente tabla:

0 = color predeterminado
1 = negrita
4 = subrayados
5 = texto intermitente
7 = campo inverso
31 = rojo
32 = verde
33 = naranja
34 = azul 
35 = púrpura
36 = magenta 
37 = gris
40 = fondo negro
41 = fondo rojo
42 = fondo verde 
43 = fondo naranja
44 = fondo azul
45 = fondo morado
46 = fondo cian
47 = fondo gris
90 = gris oscuro
91 = semáforo en rojo
92 = luz verde
93 = amarillo
94 = luz azul
95 = luz violeta
96 = turquesa
100 = fondo gris
101 = fondo rojo 
102 = fondo verde claro
103 = fondo amarillo
104 = fondo azul claro
105 = luz de fondo morado
106 = fondo turquesa

Opción 3: Utilizando LS_COLORS

Otra forma de cambiar colores es usando LS_COLORS, una colección de colores que nos permite asignar colores a la salida del comando ls. Para utilizarlo basta con entrar a la terminal y realizar los siguientes comandos:

wget https://raw.github.com/trapd00r/LS_COLORS/master/LS_COLORS -O $HOME/.dircolors
echo 'eval $(dircolors -b $HOME/.dircolors)' >> $HOME/.bashrc
. $HOME/.bashrc

Con estas diversas formas de cambiar los colores del comando ls, puede configurar a su gusto la representación de la salida de este grandioso comando.

Con información de stackoverflow y linux-sxs

COMPARTIR
Artículo anterioropenSUSE: Presentación – Redes PYMES
Artículo siguienteCómo fidelizar clientes con software libre
lagarto
Lic. en Computación, Programador, Consultor ERP, Webmaster, Community Manager y apasionado por el Internet, tengo 8 años sumergido en el mundo del software libre, especializándome en el uso del software libre n las Empresas. La Libertad del Código es directamente proporcional al Crecimiento de una Organización

2 COMENTARIOS

  1. Ya que citas Wikipedia dejalo sin alterar.

    “ls” es un comando de UNIX y derivados, no de Linux y derivados.

    No todo es invento de Linux y del software libre.

Dejar una respuesta