¿Cómo decide Windows cuál de los dos archivos con sellos de tiempo idénticos es más nuevo?
¿Qué significa cuando tienes dos archivos idénticos con sellos de tiempo idénticos, pero Windows dice que un archivo es más nuevo que el otro? ¿Como puede ser? La publicación de preguntas y respuestas del superusuario de hoy ayuda a un lector confundido a resolver un misterio de marca de tiempo.
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 WBT quiere saber cómo Windows decide cuál de los dos archivos con sellos de tiempo idénticos es más nuevo:
Cuando Windows muestra un cuadro de diálogo como éste con marcas de tiempo coincidentes, ¿cómo determina cuál de los dos archivos es más nuevo??
Al principio, pensé que Windows estaba comparando el atributo de fecha de creación y usando el resultado de esa comparación para etiquetar a uno u otro como más nuevo. Si un archivo se copió en una ubicación en particular, puede tener la fecha de creación de cuando se hizo la copia en lugar de la fecha de creación del archivo original. Sin embargo, después de reproducirlo con otro archivo, el resultado de cuál es más nuevo parece ser el opuesto:
El resultado es el mismo si se copia o mueve el archivo:
Y para el fondo, el archivo en test2 es una copia previamente hecha del archivo en test1.
¿Cómo decide Windows cuál de los dos archivos con sellos de tiempo idénticos es más nuevo??
La respuesta
Grawity, el colaborador de SuperUser, tiene la respuesta para nosotros:
Las marcas de tiempo en el sistema de archivos NTFS tienen una resolución de 100 nanosegundos (0.0000001 s). Incluso si el cuadro de diálogo de propiedades muestra el mismo valor redondeado, podría ser que los archivos se hayan creado en décimas de segundo entre sí..
Nota: La mayoría de los sistemas de archivos miden los tiempos en μs o ns. FAT32 es un poco de una reliquia y redondea las marcas de tiempo a dos segundos.
Pruebe uno de los siguientes métodos para comparar los sellos de tiempo completo:
- archivo de datos wmic donde nombre = "c: \\ foo \\ bar.txt" se modificó por última vez
A través de PowerShell:
- (Get-ChildItem c: \ foo \ bar.txt) .LastWriteTime.ToString ("o")
¿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í.
Crédito de la imagen: WBT (SuperUser)