find查找比某個文件新或舊的文件

http://blogold.chinaunix.net/u/19637/showart_681520.html

 

 
 
 
 【】 查找比某個文件新或舊的文件
如果希望查找更改時間比某個文件新但比另一個文件舊的所有文件,可以使用- n e w e r選
項。它的一般形式爲:
newest_file_name ! oldest_file_name
其中,!是邏輯非符號。
$ find . /  -newer age.txt  !  -newer belts.txt -exec ls -l {} /;
這裏有兩個文件,它們的更改時間大約相差兩天。
下面給出的find命令能夠查找更改時間比文件age.txt新但比文件belts.txt舊的文件:
如果想使用find命令的這一選項來查找更改時間在兩個小時以內的文件,除非有一個現成
的文件其更改時間恰好在兩個小時以前,否則就沒有可用來比較更改時間的文件。爲了解決
這一問題,可以首先創建一個文件並將其日期和時間戳設置爲所需要的時間。這可以用t o u c h
命令來實現。
假設現在的時間是2 3 : 4 0,希望查找更改時間在兩個小時以內的文件,可以首先創建這樣
一個文件:
$ touch -t  05042140   time.txt
$ ls -l  time.txt
-rw-r--r--  root   root   0 May   4   21:40   time.txt
一個符合要求的文件已經被創建;這裏我們假設今天是五月四日,而該文件的更改時間
是2 1 : 4 0,比現在剛好早兩個小時。
現在我們就可以使用find命令的-newer選項在當前目錄下查找所有更改時間在兩個小時以
內的文件:
$ find ./ -newer  time.txt -print
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章