记录一下shell日志颜色处理
_COLORS=${BS_COLORS:-$(tput colors 2>/dev/null || echo 0)} __detect_color_support() { # shellcheck disable=SC2181 if [ $"$_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_support echoerror() { printf "${RC} * ERROR${EC}: %s\\n" "$@" 1>&2; } echoinfo() { printf "${GC} * INFO${EC}: %s\\n" "$@"; } echowarn() { printf "${YC} * WARN${EC}: %s\\n" "$@"; }
下面看下shell清理系统日志
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 exit fi cd /home/zxd/ ./test.sh 下边这个带有日志时间加时间戳及系统负载检测: #! /bin/bash strA="long string" strB="string" result=$(echo $strA | grep "${strB}") if [[ "$result" != "" ]] then echo "包含" else echo "不包含" fi #日志目录及限定大小 workdir="/var/*.log" maxsize=100 #给文件加时间戳:函数里的变量必须在脚本函数后边跟着,这里$1不是命令行跟的参数,命令行的参数为脚本的$1 filetime(){ 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 "内存已用:%$used" echo "exit" testing
总结
以上所述是小编给大家介绍的shell日志颜色处理方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
2024年11月23日
2024年11月23日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]