Si ha ejecutado el ls
comando en Bash, notará que los directorios y archivos que ve están coloreados según su tipo. Puede personalizar su propia combinación de colores para elegir diferentes colores de texto, colores de fondo y formatos como negrita y subrayado.
El esquema de color se almacena en la variable LS_COLORS. Para ver su esquema de color actual, puede decirle al Bash que imprima el contenido de la variable:
echo $ LS_COLORS
Verá una larga lista de tipos de archivos y códigos numéricos. Le explicaremos cómo crear una lista como esta usted mismo.
Antes de jugar con esto, recomendamos guardar el contenido actual de la variable LS_COLORS en otra variable. Esto le permitirá restaurar rápidamente la configuración predeterminada sin salir del shell y volver a iniciar sesión, o cerrar y volver a abrir la ventana del terminal. Para guardar el contenido actual de la variable LS_COLORS en una nueva variable llamada ORIGINAL, ejecute:
ORIGINAL = $ LS_COLORS
En cualquier momento, puede ejecutar el siguiente comando para deshacer sus cambios y restaurar los colores predeterminados:
LS_COLORS = $ ORIGINAL
Sus cambios son siempre temporales hasta que edite un archivo para convertirlos en sus nuevos valores predeterminados. Siempre puede cerrar sesión y volver a iniciar sesión o cerrar y volver a abrir una ventana de terminal para restaurar los colores a su configuración predeterminada. Sin embargo, esto facilita hacerlo con un solo comando rápido.
La variable LS_COLORS contiene una lista de tipos de archivos junto con los códigos de color asociados. La lista predeterminada es larga porque especifica diferentes colores para varios tipos de archivos diferentes.
Comencemos con un ejemplo básico para demostrar cómo funciona esto. Digamos que queremos cambiar el color de los directorios del azul en negrita predeterminado al rojo en negrita. Podemos ejecutar el siguiente comando para hacerlo:
LS_COLORS = "di = 1; 31"
El di=1;31
bit dice ls
que los directorios ( di
) son ( =
) negrita ( 1;
) rojo ( 31
).
Sin embargo, esta es solo una variable LS_COLORS muy simple que define los directorios como un color y deja cualquier otro tipo de archivo como el color predeterminado. Digamos que también queremos hacer que los archivos con la extensión de archivo .desktop tengan un color cian subrayado. Podemos ejecutar el siguiente comando para hacerlo:
LS_COLORS = "di = 1: 31: *. Escritorio = 4; 36"
Esto indica ls
que los directorios ( di
) están ( =
) negrita ( 1;
) rojo ( 31
) y ( :
) cualquier archivo que termine en .desktop ( *.desktop
) está ( =
) subrayado ( 4;
) cyan ( 36
).
Este es el proceso para armar su lista de tipos de archivos y colores. Especifique tantos como desee en la forma filetype = color, separándolos con dos puntos (:).
Para armar su propia lista, solo necesitará conocer la lista de códigos de color y códigos de tipo de archivo. Esto usa los mismos códigos de color numéricos que usa cuando cambia el color en su indicador de Bash .
Aquí está la lista de códigos de color para texto en primer plano:
Por ejemplo, dado que el texto amarillo tiene el código de color 33, usaría di=33
para hacer que los directorios sean amarillos.
Aquí está la lista de atributos de color de texto:
Al especificar un atributo o más de un código de color, separe la lista de códigos con un carácter de punto y coma (;). No es necesario especificar 0 para texto normal, ya que se usa texto normal cuando no especifica un atributo aquí.
Por ejemplo, dado que el texto en negrita es el código de color 1 y el texto amarillo es el código de color 33, usaría di=1;33
para hacer que los directorios sean de color amarillo negrita. También puede especificar más de un atributo. Por ejemplo, podría utilizar di=1;4;33
para poner los directorios en negrita, subrayados en amarillo.
Aquí está la lista de códigos de color de fondo:
Por ejemplo, dado que un fondo azul es el código de color 44, di=44
usaría un fondo azul para los directorios. También puede combinar un código de color de fondo, un código de color de primer plano y tantos atributos como desee. Por ejemplo, di=1;4;33;44
le daría un texto amarillo subrayado en negrita sobre un fondo azul.
Aquí está la lista de códigos de tipo de archivo:
Especifique tantos tipos diferentes de códigos de tipo de archivo con tantos colores diferentes como desee, separados por el carácter:. Repita este proceso para ensamblar su variable LS_COLORS.
Por ejemplo, supongamos que desea usar texto violeta en negrita para directorios, texto rojo subrayado para archivos ejecutables y texto verde negrita sobre fondo rojo para archivos .mp3. Al juntar los códigos de tipo de archivo y los códigos de color de las listas anteriores, obtendría:
LS_COLORS = "di = 1; 35: ex = 4; 31: *. Mp3 = 1; 32; 41"
Ahora tiene una variable LS_COLORS personalizada que funciona en la sesión actual de Bash. Sin embargo, es probable que desee que sea permanente para que se use automáticamente cada vez que inicie una nueva sesión de Bash sin tener que recordar esto.
Puede configurar su variable LS_COLORS personalizada, y cualquier otra variable Bash que desee, agregándola al archivo .bashrc de su cuenta de usuario. Este archivo se encuentra en ~ / .bashrc. Entonces, si su nombre de usuario es bob, lo encontrará en /home/bob/.bashrc. También hay otras formas de establecer variables de entorno, pero esta es sencilla.
Primero, abra este archivo en su editor de texto preferido. Usaremos nano aquí como ejemplo, pero puede usar vi, emacs o cualquier otra cosa que desee.
nano ~ / .bashrc
Agregue su variable LS_COLORS personalizada a una nueva línea al final del archivo, así:
LS_COLORS = "di = 1; 35: ex = 4; 31: *. Mp3 = 1; 32; 41"
Guarda el archivo y cierra. En nano, presione Ctrl + O y luego presione Entrar para guardar, luego presione Ctrl + X para salir.
Siempre que inicie una nueva sesión de Bash, Bash leerá el archivo .bashrc y establecerá automáticamente su variable LS_COLORS. Para cambiar sus colores en el futuro, vuelva a su archivo .bashrc y edite la línea LS_COLORS.
También puede eliminar la LS_COLORS=
línea que agregó a su archivo .bashrc para usar los colores predeterminados nuevamente. Si no establece el valor LS_COLORS, Bash utilizará los colores predeterminados.
El mundo del gaming ha experimentado un crecimiento exponencial en los últimos años. La…
Stokkete/Shutterstock.com ¿Sigue utilizando una unidad flash USB obsoleta para almacenar sus archivos? ¿Por qué no…
LG Los fabricantes siempre intentan mejorar el rendimiento de imagen de los monitores. Como resultado,…
Patty Chan/Shutterstock.com Si cree en lo que ve en las redes sociales, puede pensar en…
Seksan.TH/Shutterstock.com Los servicios de suscripción como Netflix, Game Pass y Spotify nos permiten consumir tantas…
fatmawati achmad zaenuri/Shutterstock El acceso a Internet, oa cualquier otra red, se rige por la…