Shell編寫指令碼,檢測備份檔案數並且刪除舊的檔案

來源:互聯網
上載者:User

假設有log-XXX1,log-XXX2,log-XXX3....等檔案,但是由於開發板空間有限,因此要控制檔案的數量為3個,而且保留最新的那一個,因此想寫一個指令碼在每次系統啟動時執行一些操作。

1 #!/bin/sh2 3 4 if [ $(ls -l | grep "log-*" | wc -l) > 3 ]5 then6     echo "file > 3"7     rm -r $(ls -rt | head -n2)8 fi

ls -l:目的是按行列出檔案

grep "log-*":篩選出包含log-為開頭的檔案

wc -l:統計行數(也就相當於統計有多少個這樣的檔案)

ls -rt:把檔案按從舊到新的順序排列

head -n2:選取排列的頭兩個檔案,這個數字2可以任意的改變

rm -r:移除目錄

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.