Linux基礎命令---tmpwatch

一生有你llx發表於2018-12-08

tmpwatch

刪除最近一段時間沒有訪問的檔案,時間以小時為單位,節省磁碟空間。tmpwatch遞迴刪除給定時間未被訪問的檔案。通常,它用於清理用於臨時儲存空間(如/tmp)的目錄。當更改目錄時,tmpwatch對可能的爭用條件非常敏感,如果檢測到錯誤,就會退出。它不遵循它正在清理的目錄中的符號連結(即使給出一個符號連結作為它的引數),它不會切換檔案系統,跳過根使用者的lost+found目錄,只刪除空目錄、常規檔案和符號連結。

預設情況下,tmpwatch根據檔案的atime(訪問時間),而不是它們的Mtime(修改時間)來確定檔案的日期。如果檔案在“ls-l”暗示應該刪除時沒有被移除,請使用“ls-u”檢查它們的資料,以確定這是否解釋了問題的原因。

如果指定了--atime”,“--ctime”或者“--mtime”選項,那麼刪除檔案的時間由他們中的最大值決定。如果“--dirmtime”選項意味著忽略目錄的atime,即使使用了“—atime”選項。

此命令的適用範圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

 

1 、語法

tmpwatch  [ 選項]  time  file

     tmpwatch  [-u|-m|-c]  [-MUadfqstvx]  [--verbose]  [--force] [--all]  [--nodirs]  [--nosymlinks]  [--test]  [--fuser]  [--quiet]  [--atime|--mtime|--ctime]  [--dirmtime]  [--exclude path]  [--exclude-user user]  time  dirs

 

2 、選項列表

選項

說明

-u | --atime

根據檔案的atime(訪問時間)做出刪除檔案的決定。請注意,定期更新的檔案系統掃描使目錄保持最近的狀態。

-m | --mtime

根據檔案的Mtime(修改時間)而不是atime做出刪除檔案的決定。

-c |    -ctime

根據檔案的ctime(Inode Changing Time)而不是atime來決定刪除檔案;對於目錄,根據mtime做出決定

-M | --dirmtime

根據目錄的Mtime(修改時間)而不是atime作出刪除目錄的決定;完全忽略目錄的atime

-a | -all

刪除所有檔案型別,而不僅僅是常規檔案、符號連結和目錄。

-d | --nodirs

不要嘗試刪除目錄,即使它們是空的。

-f | -force

強制刪除,即使root使用者沒有寫的權利

-l | --nosymlinks

不刪除符號連結

-q | --quite

只報告致命錯誤

-s | --fuser

嘗試在刪除檔案之前使用“fuser”命令檢視檔案是否已開啟。預設情況下未啟用。在某些情況下確實有幫助,但不是全部。依賴於/sbin中安裝的fuser。不支援HPUX或Solaris

-t | --test

不刪除,只是演示要做什麼

-U | --exclude-user=user

不刪除指定所有者的檔案,可以指定使用者名稱,也可以指定使用者ID

-v | --verbose

顯示詳細資訊

-x | --exclude

跳過目錄及其內部檔案,如果路徑不存在,則它必須是不包含符號連結的絕對路徑。

-X | --exclude-pattern=pattern

跳過路徑匹配模式;如果目錄匹配模式,則其中包含的所有檔案也將被跳過。模式必須匹配不包含符號連結的絕對路徑。

 

3 、例項

1 )刪除當前目錄1小時內沒有訪問的檔案

[root@192   weijie]#  ls

1.c   2.c     3.c   magic.mgc  test01    test03     wjtpflR

1.c~  2.c~    3.c~  my.iso     test02    wj234.q1C

You have new mail   in /var/spool/mail/root

[root@192   weijie]#  tmpwatch 1 .

[root@192   weijie]#  ls

1.c  1.c~    2.c

2 )不刪除指定使用者的檔案

[root@192   weijie]#  ll

總用量  12

-rwxr--r-- 1 root   david 12 9   13 16:49 1.c          // 檔案所有者都是 root

-rw-r--r-- 1 root   david 30 9   13 16:43 1.c~

-rwxr--r-- 1 root   root  11 9   13 16:52 2.c

[root@192   weijie]#  tmpwatch -U root 1 .            // 不刪除 root 使用者的檔案

[root@192   weijie]#  ls

1.c  1.c~    2.c

 


做了一個Linux學習的平臺,目前出來一個雛形,各位可以參考使用
連結: https://pan.baidu.com/s/1GOLVU2CbpBNGtunztVpaCQ   密碼:n7bk

Linux基礎命令---tmpwatch

 

       



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29270124/viewspace-2222040/,如需轉載,請註明出處,否則將追究法律責任。

相關文章