¿Por qué dir *. * Enumera todos los archivos y carpetas?
A veces, puede terminar con resultados inesperados al ejecutar comandos, por lo que aprender el "por qué" detrás de los resultados puede ser muy interesante. Con eso en mente, la publicación de preguntas y respuestas de SuperUser de hoy tiene la respuesta a la pregunta de un lector curioso.
La sesión de Preguntas y Respuestas de hoy nos llega por cortesía de SuperUser, una subdivisión de Stack Exchange, un grupo de sitios web de preguntas y respuestas impulsado por la comunidad..
La pregunta
El lector superusuario Luu Vinh Phuc quiere saber por qué dir *. * Enumera todos los archivos y carpetas:
Cuando ejecuto el comando dir *. *, Produce resultados inesperados. Incluso se enumeran los archivos y carpetas sin ningún punto en el nombre. Por ejemplo:
¿Porqué es eso? ¿Hay alguna manera de solo listar archivos con un punto??
¿Por qué dir *. * Enumera todos los archivos y carpetas??
La respuesta
El contribuyente de superusuario Fleet Command tiene la respuesta para nosotros:
El comando DIR viene de un tiempo cuando:
- Un punto (.) No estaba permitido como un carácter en los nombres de archivos o carpetas
- Los nombres de archivos y carpetas se restringieron a 8 caracteres para nombres y 3 caracteres para extensiones
Por lo tanto, según ese estándar, *. * Significa el nombre y la extensión. No significa una cadena que contenga un ".", Que puede o no tener caracteres antes o después del ".".
La política de Microsoft está preservando la compatibilidad con versiones anteriores, por lo que se conserva la interpretación de *. *. Pero en Windows PowerShell, *. * Significa una cadena que contiene un ".", Que puede o no tener caracteres antes o después del ".".
¿Tienes algo que agregar a la explicación? Apaga el sonido en los comentarios. ¿Quieres leer más respuestas de otros usuarios de Stack Exchange con experiencia en tecnología? Echa un vistazo a la discusión completa aquí.