我想找出特定文件的创建日期,而不是修改日期或访问日期。
我已经尝试过ls -ltrh和stat filename。
我刚刚阅读了 的Birth部分,stat似乎 ext4 应该支持它,但即使是我刚刚创建的文件也将其留空。
~ % touch test slave-iv
~ % stat test.pl slave-iv
File: ‘test.pl’
Size: 173 Blocks: 8 IO Block: 4096 regular file
Device: 903h/2307d Inode: 41943086 Links: 1
Access: (0600/-rw-------) Uid: ( 1000/xenoterracide) Gid: ( 100/ users)
Access: 2012-09-22 18:22:16.924634497 -0500
Modify: 2012-09-22 18:22:16.924634497 -0500
Change: 2012-09-22 18:22:16.947967935 -0500
Birth: -
~ % sudo tune2fs -l /dev/md3 | psp4 slave-iv
tune2fs 1.42.5 (29-Jul-2012)
Filesystem volume name: home
Last mounted on: /home
Filesystem UUID: …Run Code Online (Sandbox Code Playgroud) 如何至少在几天内获得给定文件的年龄?
我很清楚ls -lh和类似的命令。我想要一些像这样工作的东西:
getfage <FILE> # prints out '12d' (12 days)
Run Code Online (Sandbox Code Playgroud)
此外,这需要有点跨平台,因为我也想在 Mac OS X 下使用它,但主要用例是在我的 Linux 盒上。
笔记
由于 Linux 不跟踪创建时间,我正在寻找两种解决方案:一种用于mtime (linux)——这是最后一次修改所述文件——另一种用于 Mac OS X,它可以处理mtime或创建时间。