In quale ordine vengono ordinate le date? Certamente non in ordine alfanumerico.
ls -lt
ordina per ora di modifica. Ma ho bisogno di tempo per la creazione.
Risposta accettata:
La maggior parte degli unice non ha un concetto di tempo di creazione dei file. Non puoi creare ls
stamparlo perché le informazioni non vengono registrate. Se hai bisogno dell'ora di creazione, usa un sistema di controllo della versione:definisci l'ora di creazione come ora di check-in.
Se la tua variante unix ha un tempo di creazione, guarda la sua documentazione. Ad esempio, su Mac OS X (l'unico esempio che conosco), usa ls -tU
. Windows memorizza anche un'ora di creazione, ma non è sempre esposta alle porte di utilità unix, ad esempio Cygwin ls
non ha un'opzione per mostrarlo. La stat
l'utilità può mostrare l'ora di creazione, chiamata "ora di nascita" nelle utilità GNU, quindi in Cygwin puoi mostrare i file ordinati per ora di nascita con stat -c '%W %n' * | sort -k1n
.
Nota che il tempo (ls -lc
) non è l'ora di creazione del file , è il tempo di cambio dell'inode. Il tempo di cambio dell'inode viene aggiornato ogni volta che cambia qualcosa sul file (contenuto o metadati) tranne per il fatto che ctime non viene aggiornato quando il file viene semplicemente letto (anche se l'atime viene aggiornato). In particolare, il ctime è sempre più recente di mtime (ora di modifica del contenuto del file) a meno che mtime non sia stato esplicitamente impostato su una data futura.