如何查找在unix中最近一小时创build的文件

如何查找在unix中最近一小时创build的文件

如果要search的目录是srch_dir那么要么

 $ find srch_dir -cmin -60 # change time 

要么

 $ find srch_dir -mmin -60 # modification time 

要么

 $ find srch_dir -amin -60 # access time 

显示在过去一小时内创build,修改或访问的文件。

更正:ctime是更改节点时间(虽然不确定,请纠正我)

UNIX文件系统(通常)不存储创build时间。 相反,只有访问时间,(数据)修改时间和(inode)更改时间。

这就是说, find-atime -mtime -ctime谓词:

 $ man 1 找
 ...
 时间
        如果最后一次更改时间,小学应评估为真
        从初始化时间减去文件状态信息,
        除以86400(剩下的任何剩余部分),是n。
 ...

因此, find -ctime 0不到一个小时前就find了inode已经改变的所有东西(例如包括文件创build,但是也计算链接数量和权限以及文件大小的改变)。

看看这个链接 ,然后帮助自己。

基本的代码是

 #create a temp. file echo "hi " > t.tmp # set the file time to 2 hours ago touch -t 200405121120 t.tmp # then check for files find /admin//dump -type f -newer t.tmp -print -exec ls -lt {} \; | pg 
 sudo find / -Bmin 60 

man页:

-Bmin n

如果文件的inode创build时间与find时间之间的差异已经开始,则四舍五入到下一个完整分钟,这是真的。

显然,你可能想要设置一些不同,但是这个主要的东西似乎是search在过去N分钟创build的任何文件的最佳解决scheme。