查找兩天前修改過的文件:
find . -type f -mtime -2
查找3天內修改過的文件:
find -ctime -3
find命令使用超過6天,空文件獨立查詢命令:
find /data/backup -ctime +6 -exec rm -f {} ; 刪除/data/backup目錄下修改時間超過6天的文件。
find /data/backup -type d -empty -exec rmdir {} ; >/dev/null 2>&1 刪除/data/backup目錄下空的文件夾,同時輸出正確和錯誤信息到空。
查找超過6天且是空文件的find命令:
find ./ -type d -empty -ctime +6
按修改時間來查找文件,要用到選項-mtime:
find /home/admin -mtime -1 #查找/home/admin目錄下修改時間在1天之內的文件
find /home/admin -name *.txt -mtime -1 #查找/home/admin目錄下修改時間在1天之內的文件名為.txt結尾的文件
find 按文件修改時間查找文件
---(+n)----------|----------(n)----------|----------(-n)---
(n+1)*24H前| (n+1)*24H~n*24H間 |n*24H內
-ctime -n 查找距現在 n*24H 內修改過的文件
-ctime n 查找距現在 n*24H 前, (n+1)*24H 內修改過的文件
-ctime +n 查找距現在 (n+1)*24H 前修改過的文件
[a|c|m]min [最後訪問|最後狀態修改|最後內容修改]min
[a|c|m]time [最後訪問|最後狀態修改|最後內容修改]time
linux 文件的三種時間(以 find 為例):
atime 最後一次訪問時間, 如 ls, more 等, 但 chmod, chown, ls, stat 等不會修改些時間, 使用 ls -utl 可以按此時間順序查看;
ctime 最後一次狀態修改時間, 如 chmod, chown 等狀態時間改變但修改時間不會改變, 使用 stat file 可以查看;
mtime 最後一次內容修改時間, 如 vi 保存後等, 修改時間發生改變的話, atime 和 ctime 也相應跟著發生改變.
注意:
linux 裡是不會記錄文件的創建時間的,除非這個文件自創建以來沒有發生改變,那麼它的創建時間就是它的最後一次修改時間。
#ls -lt /home/admin # 按修改時間順序查看
#ls -lut /home/admin # 按訪問時間順序查看
(如果想反序查看的話需要加一個選項 -r)