linux下find查找文件後使用xargs和exec進行刪除、壓縮處理。

mtime 文件內容上次修改時間node

  atime 文件被讀取或訪問的時間app

  ctime 文件狀態變化時間ide

  mtime 和 atime 的含義都是很容易理解的,而 ctime 則須要更多的解釋。因爲 inode 維護着每一個文件上的元數據,所以,若是與文件有關的元數據發生變化,則inode 數據也將變化。這多是由一系列操做引發的,包括建立到文件的符號連接、更改文件權限或移動了文件等。因爲在這些狀況下,文件內容不會被讀取或修改,所以 mtime 和 atime 不會改變,但 ctime 將發生變化。spa

  這些時間選項都須要與一個值 n 結合使用,指定爲 -n、n 或 +n。日誌

  複製代碼代碼以下:code

  N * 24it

  +1 表示 1 * 24 +24小時之外..spark

  +0 表示 0 * 24 +24小時之外class

  1 表示 1 * 24 + 24 到 24 之間..test

  0 表示 0 * 24 + 24 到 0 之間..

  -1 表示 0 * 24 +24 內,甚至爲將來時間...

  1.當前時間24小時—當前時間(昨天-今天)

  #find . -mtime 0

  2.當前時間48小時前–當前時間24小時前(前天-昨天)

  #find . -mtime 1

  3.當前時間48小時前(2天前)

  #find . -mtime +1

  4.當前時間24小時–當前時間(昨天-今天)

  #find . -mtime -1
命令舉例:
將該目錄下7天之內的日誌文件進行打包。
find /apps/spark/app/logs -mtime -7 -print |xargs tar cjf test.tar.gz

將該目錄下7天之內的日誌文件進行刪除,老是保留最新的。
find /apps/spark/app/logs  -mtime -7 -print |xargs rm -rf 
或者使用exec實現:
find /apps/spark/app/logs  -mtime -7 -exec rm {} \;
相關文章
相關標籤/搜索