亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    Tomcat 日志自動刪除的實現(xiàn)

    背景

    生產(chǎn)環(huán)境中Tomcat每天都會產(chǎn)生很多日志,如果不清理磁盤容量會不夠,手動清理又太麻煩。因此寫個腳本每天定時去刪除5天前(根據(jù)實際情況而定)的日志文件。

    編寫腳本

    1.寫一個/usr/local/script/cleanTomcatlog.sh腳本
    #!/bin/bash
    export LANG=zh_CN
    #tomcat1日志文件路徑
    export WEB_TOMCAT1=/usr/local/tomcat1/logs
    #tomcat2日志文件路徑
    export WEB_TOMCAT2=/usr/local/tomcat2/logs
    #tomcat3日志文件路徑
    export WEB_TOMCAT3=/usr/local/tomcat3/logs
    echo > ${WEB_TOMCAT1}/catalina.out
    echo > ${WEB_TOMCAT2}/catalina.out
    echo > ${WEB_TOMCAT3}/catalina.out
    find ${WEB_TOMCAT1}/* -mtime +5 -type f -exec rm -f {} ;
    find ${WEB_TOMCAT2}/* -mtime +5 -type f -exec rm -f {} ;
    find ${WEB_TOMCAT3}/* -mtime +5 -type f -exec rm -f {} ;

    2.設(shè)置cleanTomcatlog.sh腳本可執(zhí)行
    chmod a+x cleanTomcatlog.sh

     3.在控制臺上輸入以下命令
      crontab -e

     4.按i鍵編輯這個文本文件,輸入以下內(nèi)容,每天凌晨4:30重啟tomcat

    按esc鍵退出編輯,輸入wq回車保存
      30 04 * * * /usr/local/script/cleanTomcatlog.sh

    按esc鍵退出編輯,輸入wq回車保存

    5.重啟定時任務(wù)
    [root@]# service crond stop
    ?
    [root@]# service crond start

    名稱解釋

    詳解 crontab 和 find 命令

    crontab
    通過crontab可以設(shè)定程序的執(zhí)行時間表,例如讓程序在每天的8點,或者每個星期一的10點執(zhí)行一次。
    crontab -l 列出時間表;
    crontab -e編輯時間表;
    crontab -d刪除時間表;
    ?
    “-l”沒什么可說的,就是一個查看而已;
    “-e”是編輯,和vi沒什么差別(其實就是用vi編輯一個特定文件);
    “-d”基本不用,因為它把該用戶所有的時間表都刪除了,一般都是用“-e”編輯把不要了的時間表逐行刪除;
    ?
    那到底該如何編輯呢?
    ?
    crontab文件的格式是:M H D m d CMD。
    一個6個字段,其中最后一個CMD就是所要執(zhí)行的程序,如cleanTomcatlog.sh。
    M:分鐘(0-59)
    H:小時(0-23)
    D:日期(1-31)
    m:月份(1-12)
    d:一個星期中的某天(0-6,0代表周日)
    ?
    這5個時間字段用空格隔開,其值可以是一個數(shù)字,也可以用逗號隔開的多個數(shù)字(或其他) ,如果不需設(shè)置,則默認(rèn)為“*”。
    ?
    例如,每天的04點30分執(zhí)行cleanTomcatlog.sh,就是==30 04 * * * /usr/local/script/cleanTomcatlog.sh==。

    find
    基本格式:find  path expression
    1.按照文件名查找
    (1)find / -name httpd.conf  #在根目錄下查找文件httpd.conf,表示在整個硬盤查找
    (2)find /etc -name httpd.conf  #在/etc目錄下文件httpd.conf
    (3)find /etc -name ‘*srm*’  #使用通配符*(0或者任意多個)。表示在/etc目錄下查找文件名中含有字符串‘srm’的文件
    (4)find . -name ‘srm*’   #表示當(dāng)前目錄下查找文件名開頭是字符串‘srm’的文件
    ?
    2.按照文件特征查找     
    ?
    (1)find / -amin -10   # 查找在系統(tǒng)中最后10分鐘訪問的文件(access time)
    (2)find / -atime -2   # 查找在系統(tǒng)中最后48小時訪問的文件
    (3)find / -empty   # 查找在系統(tǒng)中為空的文件或者文件夾
    (4)find / -group cat   # 查找在系統(tǒng)中屬于 group為cat的文件
    (5)find / -mmin -5   # 查找在系統(tǒng)中最后5分鐘里修改過的文件(modify time)
    (6)find / -mtime -1   #查找在系統(tǒng)中最后24小時里修改過的文件
    (7)find / -user fred   #查找在系統(tǒng)中屬于fred這個用戶的文件
    (8)find / -size +10000c  #查找出大于10000000字節(jié)的文件(c:字節(jié),w:雙字,k:KB,M:MB,G:GB)
    (9)find / -size -1000k   #查找出小于1000KB的文件

    3.可以對查找到的文件在進(jìn)行操作
    -exec command;
    查找并執(zhí)行命令
    -fprint file
    打印文件完整文件名
    -fprintf file format
    打印文件格式
    -ok command;
    給用戶命令執(zhí)行操作,根據(jù)用戶的Y 確認(rèn)輸入執(zhí)行
    -ls
    打印同種文件格式的文件.

    例如:
    ?
    find / -name “*xxx*” -ls
    ?
    查找根目錄下名稱包含xxx的文件并顯示信息
    ?
    find /usr/local/tomcat1/logs/  -mtime +5 -name “*201?*” -exec rm -rf {} ;
    ?
    查找出符合條件的日志文件并刪除所有的時間表都刪除了,一般都是用“-e”編輯把不要了的時間表逐行刪除;

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號