LINUX編寫腳本定時清除日誌

先看linux上是否安裝crontab如果沒有根據以下博客安裝:https://www.cnblogs.com/Alan-Jones/p/8022936.html

腳本內容就是將日誌文件大小變爲0,因爲如果你刪除了日誌文件或許的日誌不會輸出也不會有新的日誌文件生成,所以我們選擇將文件大小變爲0

腳本內容:

#!/bin/bash

status(){
  date
  find /opt/ -name '*.opt' -type f -print -exec truncate -s 0 {} \;
  echo "清空log成功"
  return
}

case "$1" in
    status)
        status;;*)
            echo "清除失敗"
esac

主要內容就是:

find /opt/ -name '*.opt' -type f -print -exec truncate -s 0 {} \;

意思就是將opt目錄下所有後綴爲opt的文件大小調整爲0

配置腳本權限:

chmod 777 clearopt.sh

配置定時任務:

   基礎用法:

   crontab -l    :查看定時任務

   crontab -e    :添加任務

   crontab -r   :刪除任務

   cat  /etc/crontab    :查看crontab文件

crontab的時間格式的使用:https://blog.csdn.net/resilient/article/details/80963526

執行命令添加一個定時任務:

crontab -e  

內容:

*/1 * * * * /opt/clearopt.sh > /opt/clear.log

先設置1分鐘測試一下,沒問題了就設置自己想要定義的時間:

1、在 12:01 a.m 運行,即每天凌晨過一分鐘
    1 0 * * * /opt/clearopt.sh > /opt/clear.log


2、每個月的第一天 1:10 p.m 運行
    10 13 1 * * /opt/clearopt.sh > /opt/clear.log


3、每個工作日 11 p.m 運行。
    0 23 * * 1-5 /opt/clearopt.sh > /opt/clear.log

也可以直接定時執行命令不需要腳本:

*/1 * * * * find /opt/ -name '*.opt' -type f -print -exec truncate -s 0 {} \;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章