我正在使用ls -t
按时间顺序处理我的文件,其中ls -t
指的是修改时间。
我的问题是:-t
选项有多精确?秒,毫秒还是纳秒?
答案 0 :(得分:3)
这取决于操作系统和使用的文件系统,因此在没有指定精确环境的情况下,没有明确的答案。
例如,FAT12 / 16/32的创建时间戳分辨率为10ms,但修改时间戳分辨率仅为2s。因此,即使操作系统支持更高的计时器分辨率(很可能;-),您也不会获得比这个2s分辨率更精确的时间戳。
另一方面,如果你有一个1纳秒时间戳分辨率的文件系统(如ext4,btrfs,XFS或ZFS),但你的操作系统内核定时器只有1毫秒的分辨率,这又是限制因素,你不会比1毫秒更精确。
有关某些文件系统解决方案的列表,请参阅Wikipedia article "Comparison of file systems"。它没有完整,只列出最大分辨率,这可能会产生误导,因为FAT12 / 16/32可以看到它们具有不同的创建分辨率(10ms)和修改(2s)时间戳。