国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Linux > 正文

shell日志顏色處理及清理系統(tǒng)日志的方法

2019-10-26 18:58:25
字體:
來源:轉載
供稿:網(wǎng)友

記錄一下shell日志顏色處理

_COLORS=${BS_COLORS:-$(tput colors 2>/dev/null || echo 0)}__detect_color_support() {  # shellcheck disable=SC2181  if [ $? -eq 0 ] && [ "$_COLORS" -gt 2 ]; then    RC='/033[1;31m'    GC='/033[1;32m'    BC='/033[1;34m'    YC='/033[1;33m'    EC='/033[0m'  else    RC=""    GC=""    BC=""    YC=""    EC=""  fi}__detect_color_supportechoerror() {  printf "${RC} * ERROR${EC}: %s//n" "$@" 1>&2;}echoinfo() {  printf "${GC} * INFO${EC}: %s//n" "$@";}echowarn() {  printf "${YC} * WARN${EC}: %s//n" "$@";}

下面看下shell清理系統(tǒng)日志

1.設置日志峰值,到達則刪除
2.定時檢測,crontab添加定時任務
3.后臺掛載 : ./xx.sh &

工作腳本:

#! /bin/sh#日志目錄及限定大小workdir="/var/*.log"maxsize=100#搜索最老文件,不加目錄默認的本目錄里邊的文件 r倒序輸出 t時間 head -n1取第一行 awk命令括號$1位文件名 管道連接oldfile(){ oldfile=`ls $workdir -t 2>/dev/null| head -n1 | awk '{printf $1}'`}clear_old_log(){ if [ ! $oldfile ] then  #echo "日志不存在" 1>/dev/null  return 0 fi  while true; do  oldfile  if [ ! $oldfile ]  then    return 0  fi  logsize=`du -ms $oldfile 2>/dev/null| awk '{printf $1}'` #m表示兆 k b  if [ $logsize -gt $maxsize ]  then  str1="log"  str2="err"  if [[ $oldfile == *$str1* ]]   then  pkill snake  rm -rf $oldfile   fi   if [[ $oldfile == *$str2* ]]   then  service mysql restart  pkill snake  rm -rf $oldfile  fi  else  break  fi done}testing(){  while true; do  workdir="/var/*.log"  oldfile    clear_old_log   workdir="/var/lib/mysql/*.err"   oldfile   clear_old_log  done}testing定時任務腳本:#! /bin/sh#a=`pgrep -f test1.sh|wc -l`#if [ $(ps -ef|grep test.sh|wc -l) -gt 1 ]if test $(pgrep -f test.sh|wc -l) -ge 1 then exitficd /home/zxd/./test.sh下邊這個帶有日志時間加時間戳及系統(tǒng)負載檢測:#! /bin/bashstrA="long string"strB="string"result=$(echo $strA | grep "${strB}")if [[ "$result" != "" ]]then  echo "包含"else  echo "不包含"fi#日志目錄及限定大小workdir="/var/*.log"maxsize=100#給文件加時間戳:函數(shù)里的變量必須在腳本函數(shù)后邊跟著,這里$1不是命令行跟的參數(shù),命令行的參數(shù)為腳本的$1filetime(){ a=$(date +%Y%m%d%H%M%S) A=$1.$(date +%Y%m%d%H%M%S) echo $A}filetime "/var/log"#搜索最老文件,不加目錄默認的本目錄里邊的文件 r倒序輸出 t時間 head -n1取第一行 awk命令括號$1位文件名 管道連接oldfile(){ oldfile=`ls $workdir -rt 2>/dev/null| head -n1 | awk '{printf $1}'`}clear_old_log(){ if [ ! $oldfile ] then  echo "日志不存在" 1>/dev/null  return 0 fi  while true; do  oldfile  if [ ! $oldfile ]  then  echo "日志不存在" 1>/dev/null   return 0  fi  logsize=`du -bs $oldfile 2>/dev/null| awk '{printf $1}'`  if [ $logsize -gt $maxsize ]  then  str1="log"  str2="err"  if [[ $oldfile == *$str1* ]]   then  pkill snake  rm -rf $oldfile   fi   if [[ $oldfile == *$str2* ]]   then  service mysql restart  pkill snake  rm -rf $oldfile   fi  else  break  fi done}testing(){ echo "run" while true; do  oldfile    clear_old_log   echo "222"   workdir="/var/lib/mysql/libmaster.err"   oldfile   clear_old_log  done}disk=`df |grep /dev/mapper/fedora-root | awk '{printf $5}' | sed 's/%//g'`echo "磁盤已用:%$disk"memtotal=`cat /proc/meminfo |grep MemTotal |awk '{printf $2}'`memfree=`cat /proc/meminfo |grep MemFree |awk '{printf $2}'`used=$((100- memfree*100/memtotal))echo "內(nèi)存已用:%$used"echo "exit"testing            
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 察哈| 陇西县| 昆明市| 平邑县| 临夏市| 临桂县| 公安县| 浮山县| 巴塘县| 甘孜| 新蔡县| 镇康县| 普兰县| 德令哈市| 桐梓县| 徐闻县| 孝感市| 古丈县| 龙井市| 突泉县| 西宁市| 鹤峰县| 东宁县| 威海市| 台南县| 彭州市| 奉新县| 昌平区| 淮滨县| 日喀则市| 名山县| 德格县| 吴堡县| 横峰县| 安仁县| 紫金县| 沾益县| 永昌县| 临洮县| 太仆寺旗| 洮南市|