1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        Linux下如何刪除長時間不使用的舊文件?

        共 3064字,需瀏覽 7分鐘

         ·

        2020-10-14 03:44


        點擊「閱讀原文」查看良許原創(chuàng)精品視頻。


        我們知道系統(tǒng)里面常常會有一些忘記刪除的長時間不用而且確實沒有用處的文件,如果不去處理,這些無用的文件會越來越多,浪費許多系統(tǒng)資源。在不知道文件名的情況下,很難去檢查某一目錄下到底是哪些文件長時間沒有被訪問,同時刪除這些文件。我們今天就介紹一款非常實用的工具來完成這一工作————tmpwatch

        tmpwatch 是什么

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

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

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

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

        怎樣在 Linux 上安裝 tmpwatch

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

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

        $?sudo?yum?install?-y?tmpwatch

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

        $?sudo?apt-get?install?tmpreaper

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

        $?sudo?zypper?install?-y?tmpwatch

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

        $?sudo?dnf?install?-y?tmpwatch

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

        tmpwatch 命令的關鍵選項和參數(shù)

        • atime (File Last Access Time):文件最后一次被訪問的時間;
        • mtime (File Last Modify Time):文件內(nèi)容最后一次被修改的時間;
        • ctime (File Last Change Time):文件元數(shù)據(jù)最后一次被修改的時間,即文件相關屬性被修改的時間,多數(shù)情況下 mtime 和 ctime 值相同,但是諸如文件所有者、權限、所屬組這類不涉及內(nèi)容的屬性被修改時則只會影響 ctime;
        • dirmtime (Directory Last modification time):目錄最后一次被修改的時間。

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

        • d:單位為天;
        • h:單位為小時;
        • m:單位為分鐘;
        • s:單位為秒。

        tmpwatch 命令刪除一段時間內(nèi)沒有被訪問的文件

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

        #?tmpwatch?5?/tmp

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

        #?tmpwatch?-m?10?/home/daygeek/Downloads

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

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

        #?tmpwatch?30d?/home/daygeek/Downloads

        刪除一段時間內(nèi)未被使用的所有文件

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

        #?tmpwatch?-am?12?/tmp

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

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

        #?tmpwatch?-am?10?--nodirs?/home/daygeek/Downloads

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

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

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

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

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

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

        預演 tmpwatch 的效果

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

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

        tmpwatch 設置一個定時任務周期性地執(zhí)行刪除操作

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

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

        #?crontab?-e

        0?10?*?*?*?/usr/sbin/tmpwatch?15d?/home/daygeek/Downloads

        關于 tmpwatch 命令的介紹就到這里了,希望本篇文章對各位讀者能有幫助,關于這個命令,你如果還有什么疑問或者其他想法,歡迎留言討論


        良許個人微信


        添加良許個人微信即送3套程序員必讀資料


        → 精選技術資料共享

        → 高手如云交流社群





        本公眾號全部博文已整理成一個目錄,請在公眾號里回復「m」獲??!

        推薦閱讀:

        計算機網(wǎng)絡基礎知識總結

        GitHub 標星 3w+,很全面的算法和數(shù)據(jù)結構知識

        C++雖不會過時,但是真的難??!


        5T技術資源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,單片機,樹莓派,等等。在公眾號內(nèi)回復「1024」,即可免費獲取?。?/span>


        瀏覽 38
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            国产欧美性爱 | 深夜福利小视频 | 国产无遮挡免费 | 五月丁香影院 | 亚洲AV色香蕉一区二区三区 | 特级人体444www | 操B小电影 | 国产尤物精品在线 | 成人门 性视频免费站 | 色色99 |