1 votos

¿Por qué ls color de dos supuestamente similar archivos de forma diferente?

Así que, aquí está la peculiar situación:

$ ls -l foo.sqlite foo.ssqlite
-rw-r--r-- 1 xie xie 8192 Jan 22 19:25 foo.sqlite
-rw-r--r-- 1 xie xie 8192 Jan 23 11:48 foo.ssqlite

En la salida, foo.sqlite es de color azul por ls mientras foo.ssqlite es de color rojo/rosa. Los permisos son los mismos, los tipos son los mismos:

$ file foo.sqlite foo.ssqlite
foo.sqlite:  SQLite 3.x database, last written using SQLite version 3026000
foo.ssqlite: SQLite 3.x database, last written using SQLite version 3023001

La única diferencia obvia es que foo.sqlite fue creado por un script de Perl, mientras que el otro - por una secuencia de comandos de Python, sin embargo, que no explica los diferentes colores, como si ls reconoce estos dos tipos de archivos diferentes. Bien, la pregunta entonces es: ¿por qué ls informe de estos en diferentes colores a pesar de que el tipo de la misma?

2voto

Serg Puntos 17677

Al parecer, ls depende de la variable de entorno $LS_COLORS. Haciendo echo "$LS_COLORS" | grep --color sqlite reveló una entrada con valor *.sqlite=38;5;147, que al parecer es la de 256 colores de escape ANSI código de color en el formulario ESC[38;5;#m para el color de primer plano.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: