如何查找在unix中最后一小时创建的文件
答案 0 :(得分:179)
如果要搜索的目录是srch_dir
,那么
$ find srch_dir -cmin -60 # change time
或
$ find srch_dir -mmin -60 # modification time
或
$ find srch_dir -amin -60 # access time
显示在过去一小时内创建,修改或访问过的文件。
更正:ctime用于更改节点时间(不确定,请纠正我)
答案 1 :(得分:22)
UNIX文件系统(通常)不存储创建时间。相反,只有访问时间,(数据)修改时间和(inode)更改时间。
话虽如此,find
有-atime
-mtime
-ctime
谓词:
$ man 1 find ... -ctime n The primary shall evaluate as true if the time of last change of file status information subtracted from the initialization time, divided by 86400 (with any remainder discarded), is n. ...
因此,find -ctime 0
会在不到一小时前找到inode已更改的所有内容(例如,包括文件创建,但还会计算链接数和权限以及文件大小更改)。
答案 2 :(得分:10)
结帐this link,然后帮助自己。
基本代码是
#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
答案 3 :(得分:4)
sudo find / -Bmin 60
来自man
页面:
-Bmin n
如果文件的inode创建时间与之间的差异为真 时间
find
开始,向上舍入到下一整分钟,是n 分钟。
显然,你可能想要设置一点不同,但这个主要似乎是搜索在最后 N 分钟内创建的任何文件的最佳解决方案。
答案 4 :(得分:3)
OR
答案 5 :(得分:-1)