Tradicionalmente, en los sistemas operativos UNIX y UNIX, el .
prefijo significa un archivo oculto , similar al indicador "Oculto" en Windows. Funciona en cualquier lugar, pero su uso principal es ocultar los archivos de configuración en su directorio de inicio (p. Ej. ~/.cache/
O ~/.plan
, a menudo se los llama "archivos de puntos").
Para forzar la ls
visualización de archivos ocultos, necesita la -a
opción.
Casi todos los administradores de archivos gráficos también respetan este prefijo; CtrlHalterna los archivos "ocultos" en GNOME.
Como Rob Pike escribe en Google+ , esta fue una característica accidental:
Hace mucho tiempo, mientras se estaba elaborando el diseño del sistema de archivos Unix, las entradas. y ... apareció, para facilitar la navegación. No estoy seguro, pero creo que ... entró durante la reescritura de la Versión 2, cuando el sistema de archivos se volvió jerárquico (al principio tenía una estructura muy diferente). Sin embargo, cuando uno escribió ls, aparecieron estos archivos, por lo que Ken o Dennis agregaron una prueba simple al programa. Estaba en ensamblador entonces, pero el código en cuestión era equivalente a algo como esto:
if (name[0] == '.') continue;
Esta declaración fue un poco más corta de lo que debería haber sido, que es
if (strcmp(name, ".") == 0 || strcmp(name, "..") == 0) continue;
pero bueno, fue fácil.
Dos cosas resultaron.
Primero, se estableció un mal precedente. Muchos otros programadores perezosos introdujeron errores al hacer la misma simplificación. Los archivos reales que comienzan con puntos a menudo se omiten cuando deben contarse.
En segundo lugar, y mucho peor, se creó la idea de un archivo "oculto" o "punto". Como consecuencia, más programadores perezosos comenzaron a soltar archivos en el directorio de inicio de todos. No tengo tantas cosas instaladas en la máquina que estoy usando para escribir esto, pero mi directorio de inicio tiene alrededor de cien archivos de puntos y ni siquiera sé qué son la mayoría de ellos o si todavía son necesarios . Cada lodo acumulado ralentiza cada evaluación de nombre de archivo que pasa por mi directorio de inicio.