29Aug

Hvordan bestemmer Windows hvilke av to filer med identiske tidsstemmer som er nyere?

click fraud protection

Hva betyr det når du har to identiske filer med identiske tidsstemmer, men Windows sier at en fil er nyere enn den andre? Hvordan kan det være? Dagens SuperUser Q & A-innlegg hjelper en forvirret leser til å løse et tidsstempel mysterium.

Dagens Spørsmål &Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppering av Q & A-nettsteder.

Spørsmålet

SuperUser leser WBT ønsker å vite hvordan Windows bestemmer hvilken av to filer med identiske tidsstemmer som er nyere:

Når Windows viser en dialog som dette med matchende tidsstemmer, hvordan bestemmer den hvilken av de to filene som er nyere?

Først trodde jeg at Windows sammenlignet datoopprettede attributter og brukte resultatet av den sammenligningen til å merke den ene eller den andre som nyere. Hvis en fil ble kopiert til et bestemt sted, kan det ha opprettelsesdato for når kopien ble laget i stedet for opprettelsesdatoen for den opprinnelige filen. Men etter å ha reprodusert den med en annen fil, synes resultatet som det er nyere:

instagram viewer

Resultatet er det samme om du kopierer eller flytter filen:

Og for bakgrunnen er filen i test2 en tidligere laget kopi avfilen i test1.

Hvordan bestemmer Windows hvilken av to filer med identiske tidsstemmer som er nyere?

Svaret

SuperUser-bidragsgravitasjonen har svaret for oss:

Tidsstempler i NTFS-filsystemet har en oppløsning på 100 nanosekunder( 0.0000001 s).Selv om egenskapsdialogen viser samme avrundede verdi, kan det likevel være at filene ble opprettet innen tiendedeler av et sekund av hverandre.

Merk: De fleste filsystemer måler ganger i μs eller ns. FAT32 er litt av en relikvie og runder tidsstempler i to sekunder.

Prøv en av følgende metoder for å sammenligne fulltidsstemplene:

  • wmic datafile der navnet = "c: \\ foo \\ bar.txt" får sistmodifisert

Via PowerShell:

  • ( Get-ChildItem c: \ foo \ bar.txt). LastWriteTime. ToString( "o")

Har du noe å legge til forklaringen? Lyder av i kommentarene. Vil du lese flere svar fra andre tech-savvy Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her.

Image Credit: WBT( SuperUser)