久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Linux下怎么刪除長時間不使用的舊文件

151次閱讀
沒有評論

共計 2636 個字符,預計需要花費 7 分鐘才能閱讀完成。

自動寫代碼機器人,免費開通

這篇文章主要為大家展示了“Linux 下怎么刪除長時間不使用的舊文件”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓丸趣 TV 小編帶領大家一起研究并學習一下“Linux 下怎么刪除長時間不使用的舊文件”這篇文章吧。

tmpwatch 是什么

tmpwatch 能夠循環地刪除指定目錄下指定時間內沒有被訪問的文件,這一命令常常用于清理臨時文件目錄,比如 /tmp 或者 /var/tmp   這類目錄。

它只清除指定目錄下的空目錄、普通文件和符號鏈接文件,也不會影響其他目錄,而且會避開那些屬于 root 用戶的系統相關關鍵文件的。

默認設置下,tmpwatch 命令依據文件的 atime (access time) 而非 mtime (modify  time) 來刪除文件。如果你想改變它的刪除依據,可以在使用這個命令時加上你想修改的參數。

注意:千萬不要在根目錄底下運行 tmpwatch 或者 tmpreaper 命令,因為系統可沒有任何機制阻止你在根目錄下運行此命令。

怎樣在 Linux 上安裝 tmpwatch

各種 Linux 發行版本的安裝命令都有些略微差別,具體的安裝方法見下文。

如果你的 Linux 發行版本是 REHL/CentOS 6 的話,可以使用 yum 命令來安裝 tmpwatch,示例如下:

$ sudo yum install -y tmpwatch

如果你使用的 Linux 發行版本是 Debian 或者 Ubuntu,則需要使用 apt 或者 apt-get 命令來安裝  Tmpreaper,示例如下:

$ sudo apt-get install tmpreaper

如果你使用的是 openSUSE,則應使用 zypper 命令安裝 tmpwatch:

$ sudo zypper install -y tmpwatch

如果 Linux 發行版本是 Fedora,則應使用 dnf 命令安裝 tmpwatch:

$ sudo dnf install -y tmpwatch

說明:在以 Debian 為基礎的 Linux 系統,是用 tmpreaper 命令代替 tmpwatch 的,若你使用的系統是以 Debian   為基礎的 Linux 版本,則將下文的示例中的 tmpwatch 換為 tmpreaper 即可。

tmpwatch 命令的關鍵選項和參數

atime (File Last Access Time):文件最后一次被訪問的時間;

mtime (File Last Modify Time):文件內容最后一次被修改的時間;

ctime (File Last Change Time):文件元數據最后一次被修改的時間,即文件相關屬性被修改的時間,多數情況下 mtime 和  ctime 值相同,但是諸如文件所有者、權限、所屬組這類不涉及內容的屬性被修改時則只會影響 ctime;

dirmtime (Directory Last modification time):目錄最后一次被修改的時間。

這些時間參數用來設置刪除文件的條件閾值:

d:單位為天;

h:單位為小時;

m:單位為分鐘;

s:單位為秒。

用 tmpwatch 命令刪除一段時間內沒有被訪問的文件

如前所述,tmpwatch 命令的默認選項是 atime,而默認的單位參數則是  h,所以如果你確實要按以小時為單位計算的訪問時間來刪除文件,那么你不用加任何特殊的選項或則參數后綴,可以直接是用這個命令。如下例所示,即為刪除 /tmp   目錄下過去 5 小時內沒有被訪問的文件:

# tmpwatch 5 /tmp

下面這個示例是刪除 /home/daygeek/Downloads 目錄下過去十小時內沒有修改過內容的文件,注意,如果要按 mtime   來刪除文件,需要在命令中加上 -m 的選項:

# tmpwatch -m 10 /home/daygeek/Downloads

刪除以其他單位計算的某段時間內沒有被訪問的文件

如果你要以天為單位,則需要加上 d 的后綴,如下為刪除 30 天內沒有被訪問的文件:

# tmpwatch 30d /home/daygeek/Downloads

刪除一段時間內未被使用的所有文件

如果你想不僅僅刪除普通文件、符號鏈接文件、空目錄文件,而是想刪除指定目錄下某段時間內沒有被訪問的所有文件,則需要加上選項  -a,如下為刪除指定目錄下 12 小時未被修改內容的所有文件:

# tmpwatch -am 12 /tmp

將某些目錄排除在刪除操作外

如下命令可以讓那些十小時內沒有被修改過內容的目錄不被刪除:

# tmpwatch -am 10 --exclude=/home/daygeek/Downloads/Movies /home/daygeek/Downloads

將特定路徑排除在刪除操作外

下面的命令刪除 /home/daygeek/Downloads 目錄下所有十小時內沒有修改內容的文件,但是  /home/daygeek/Downloads/Movies 路徑下卻不受影響,即該路徑下十小時內沒修改的文件也不會被刪除:

# tmpwatch -am 10 --exclude-pattern= *.pdf  /home/daygeek/Downloads

將特定格式的文件排除在刪除操作外

下面所示的命令為刪除指定文件下的所有 10 小時內未被改動的文件,除了 pdf 格式的文件:

# tmpwatch -am 10 --exclude-pattern= *.pdf  /home/daygeek/Downloads

預演 tmpwatch 的效果

下面這條命令即是對 tmpwatch 的功能效果進行預演:

# tmpwatch -t 5h /home/daygeek/Downloads

用 tmpwatch 設置一個定時任務周期性地執行刪除操作

要完成這個任務,會在 /etc/cron.daily/tmpreaper 目錄下留下一個 cronjob 文件,這個文件是按照  /etc/timereaper.conf 的設定工作的,你可以按自己的需求設置它。

如下所示的設置,能在每天上午 10 點時刪除指定目錄下,十五天沒被訪問的文件:

# crontab -e 0 10 * * * /usr/sbin/tmpwatch 15d /home/daygeek/Downloads

以上是“Linux 下怎么刪除長時間不使用的舊文件”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注丸趣 TV 行業資訊頻道!

向 AI 問一下細節

丸趣 TV 網 – 提供最優質的資源集合!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-12-07發表,共計2636字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 南丹县| 江城| 陆河县| 六盘水市| 丰宁| 集安市| 章丘市| 吉安市| 信宜市| 宣恩县| 青田县| 介休市| 南雄市| 陇南市| 咸丰县| 平乡县| 洪江市| 侯马市| 南雄市| 天柱县| 香港 | 西林县| 新田县| 澳门| 中江县| 涟水县| 西充县| 棋牌| 兴隆县| 兴安盟| 临西县| 定南县| 泰宁县| 会昌县| 苏尼特右旗| 瑞金市| 石河子市| 乌审旗| 边坝县| 安陆市| 高阳县|