Linux文件创建时间
2019獨角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
昨天把一個沒有頂層路徑的壓縮包解壓了,文件混合在了當(dāng)前路徑,想通過時間找到新解壓出來的文件刪掉,因此有了此文。
Linux文件大家熟知的有三個時間:
Atime訪問時間,可以禁用此時間的更新減輕內(nèi)核的工作 ls -lu
mtime修改時間,文件內(nèi)容修改的時間 ls -l
ctime狀態(tài)改變時間,文件內(nèi)容 和 文件的信息(權(quán)限等)改變的時間ls -lc
沒有創(chuàng)建時間,用stat命令查看文件:
root@hare:~# stat aFile: ‘a(chǎn)’Size: 1913 Blocks: 8 IO Block: 4096 regular file Device: fc00h/64512d Inode: 58834 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2018-01-15 21:58:03.057388606 +0800 Modify: 2018-01-15 21:57:57.233393198 +0800 Change: 2018-01-15 21:57:57.237393195 +0800Birth: -有個Birth時間,但是為空?經(jīng)搜索發(fā)現(xiàn),?據(jù)說BSD 和 Cygwin支持Birth,Linux需要等到內(nèi)核提供xstat()接口才行。http://lists.gnu.org/archive/html/bug-findutils/2011-11/msg00015.html
不過萬能的網(wǎng)友還發(fā)現(xiàn)了另外一個方式(ext4文件系統(tǒng)下測試):
root@hare:~# ls -i a 58826 a root@hare:~# debugfs -R 'stat <58826>' /dev/mapper/tiny--vg-root Inode: 58826 Type: regular Mode: 0644 Flags: 0x80000 Generation: 4107976241 Version: 0x00000000:00000001 User: 0 Group: 0 Size: 3 File ACL: 0 Directory ACL: 0 Links: 1 Blockcount: 8 Fragment: Address: 0 Number: 0 Size: 0ctime: 0x5a600348:b92f2880 -- Thu Jan 18 10:15:36 2018atime: 0x5a60037f:2bff12cc -- Thu Jan 18 10:16:31 2018mtime: 0x5a6002ef:8c67dd00 -- Thu Jan 18 10:14:07 2018 crtime: 0x5a600173:90494cdc -- Thu Jan 18 10:07:47 2018 Size of extra inode fields: 28 EXTENTS: (0):285456 (END)使用debugfs用inode號查看,會發(fā)現(xiàn)一個crtime,這就是創(chuàng)建時間了。
備注:文件被修改,mtime和ctime會同時被改變
如果做測試,修改用echo 'hello' > file,不要用vim,vim會創(chuàng)建新文件inode就變了。
最后回到開始我的問題,因為解壓出來的文件是新創(chuàng)建的,他們的inode信息都是新的,沒有修改內(nèi)容和權(quán)限的情況下,我們可以認(rèn)為ctime就是創(chuàng)建時間,atime和mtime一般會從壓縮包繼承出來。
轉(zhuǎn)載于:https://my.oschina.net/tinyhare/blog/1608946
總結(jié)
以上是生活随笔為你收集整理的Linux文件创建时间的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 网站源码 四套模版 兼容手机平
- 下一篇: shell脚本第一篇——自定义创建用户和