天天看點

Linux 删除指定時間前的檔案

顯示20分鐘前的檔案

find /home/prestat/bills/test -type f -mmin +20 -exec ls -l {} \;

删除20分鐘前的檔案

find /home/prestat/bills/test -type f -mmin +20 -exec rm {} \;

顯示20天前的檔案

find /home/prestat/bills/test -type f -mtime +20 -exec ls -l {} \;

删除20天前的檔案

find /home/prestat/bills/test -type f -mtime +20 -exec rm {} \;

下面為find指令的參數說明:

-name 按照檔案名查找檔案。

-perm 按照檔案權限來查找檔案。

-prune 使用這一選項可以使find指令不在目前指定的目錄中查找,如果同時使用-depth選項,那麼-prune将被find指令忽略。

-user 按照檔案屬主來查找檔案。

-group 按照檔案所屬的組來查找檔案。

-mtime -n +n 按照檔案的更改時間來查找檔案, - n表示檔案更改時間距現在n天以内,+ n表示檔案更改時間距現在n天以前。

find指令還有-atime和-ctime 選項,但它們都和-m time選項。

-nogroup 查找無有效所屬組的檔案,即該檔案所屬的組在/etc/groups中不存在。

-nouser 查找無有效屬主的檔案,即該檔案的屬主在/etc/passwd中不存在。

-newer file1 ! file2 查找更改時間比檔案file1新但比檔案file2舊的檔案。

-type 查找某一類型的檔案,諸如:b - 塊裝置檔案,d - 目錄,c - 字元裝置檔案,p - 管道檔案,l - 符号連結檔案,f - 普通檔案。

-size n:[c] 查找檔案長度為n塊的檔案,帶有c時表示檔案長度以位元組計。

-depth:在查找檔案時,首先查找目前目錄中的檔案,然後再在其子目錄中查找。

-fstype:查找位于某一類型檔案系統中的檔案,這些檔案系統類型通常可以在配置檔案/etc/fstab中找到,該配置檔案中包含了本系統中有關檔案系統的資訊。

-mount:在查找檔案時不跨越檔案系統mount點。

-follow:如果find指令遇到符号連結檔案,就跟蹤至連結所指向的檔案。

-cpio:對比對的檔案使用cpio指令,将這些檔案備份到錄音帶裝置中。

另外,下面三個的差別:

-amin n  查找系統中最後N分鐘通路的檔案

-atime n  查找系統中最後n*24小時通路的檔案

-cmin n  查找系統中最後N分鐘被改變檔案狀态的檔案

-ctime n  查找系統中最後n*24小時被改變檔案狀态的檔案

-mmin n  查找系統中最後N分鐘被改變檔案資料的檔案

-mtime n  查找系統中最後n*24小時被改變檔案資料的檔案

​​http://javawind.net/p132​​