#!/usr/bin/env bash
file_path=
"/***/***"
#日誌路徑
file_size=
$(du -m $
|awk'')
#日誌路徑下的檔案大小
default_size=$[35 * 1024]
#預設乙個ip日誌檔案的總量為35g
over_size=$[
$/$]
#現有的檔案總量是35g的倍數
flag_size=$[$[over_size]
== 1 || $[over_size]
> 1]
#如果等於1,則達到35g,flag為true,則為1
file_count=
$(ls -l $
|grep
"f*"
|wc -l)
#日誌路徑下的檔案個數
default_count=150 #預設乙個container的所有的流的日誌檔案個數為150
over_count=$[
$/$]
#現有的檔案個數是預設檔案個數的倍數
flag_count=$[
$>= 1 ]
#判斷檔案個數是否為150個,超過將最早的日誌檔案刪除if[
$== 1 ]
;then
# 判斷日誌總量超過預設值
# 清除時間最早的日誌
file_name=
$(ls -rt $
|head -1)
echo$if
[ -n "$file_name"];
then
echo$$
rm -rf $
$echo
"清除的日誌為:"
$else
echo
"不存在檔案"
fielif[$
== 1 ]
;then
# 判斷日誌檔案個數超過預設值if[
$!=$]
;then
del_num=$[
$ - $
] file_names=
$(ls -rt $
|head -$
) echo
"清除的日誌為:"$cd
$rm -rf $(
ls -rt $
|head -$
) fi
else
echo
"日誌大小為: "$[
$/1024]
"m"fi
shell指令碼實踐清除日誌
在生產環境中日誌是運維人員了解和分析生產環境的第一手資料,但是日誌資訊的內容量相當龐大,特別在公有雲環境中執行的業務系統,一般系統盤在20g 40g左右,如果沒有合理的日誌管理方案,很容易出現儲存空間不夠的現象,總結了以下幾種日誌處理的簡單方式,作為自己的實踐筆記,同時和大家一起交流學習。1 部分日...
shell指令碼定時清除日誌檔案
bin bash clearfile 獲取資料夾內,檔案大小 m為單位 和檔案路徑 呼叫clear函式清空檔案 clear filesizeandfile clear echo 檔案大小 filesize echo 檔案路徑 filepath echo 磁碟空間 disksize 獲取檔名 file...
清除tomcat日誌檔案的shell指令碼
bin bash d date f exec mydata script logs d tomcat log 2 1 echo 開始執行清除tomcat日誌檔案 find titakid tomcat7 logs mtime 10 name out exec rm rf if eq 0 then e...