shell脚本定时清除messages日志及TAG为none的docker images

#!/bin/bash
logstatus=du -sh /var/log/messages
docker_image=docker images
docker_none=docker images|grep none
docker_rm=docker images|grep none|awk ‘{print $3 }‘
disk=df -h
cleanlog()
{
echo "######start clean messages#######"
echo "目前日志大小 $logstatus"
read -p "是否清理messages日志,请输入(yes/no): " messlog
if [ ${messlog} = "yes" ];then
cat /dev/null > /var/log/messages
logstatus=du -sh /var/log/messages
echo -e "清理后 $logstatus"

if [ ${messlog} = "no" ];then
    exit 0
fi

fi
return 0
}
cleandockerimage()
{
echo "######start clean docker image#######"
if [ -n "${docker_rm}" ];then
echo -e "删除以下TAG为"none"的doncker images\n$docker_none"
else
echo -e "==============================================================================\n无TAG为none的docker image\n已退出当前脚本"
exit 0
fi

read -p "是否继续删除,请输入(yes/no) " delimage
if [ ${delimage} = "yes" ];then
for i in ${docker_rm}
do
docker rmi -f ${i}
echo "=============================================================================="
echo -e "删除成功:docker images列表 \n$docker_image"
done
if [ ${delimage} = "no" ];then
exit 0
fi
fi
return 0
}

echo -e "目前磁盘状态\n==============================================================================\n$disk"
echo -e "\n==============================================================================\n磁盘垃圾清理"
echo -e "1.清理系统日志\n2.清理Docker镜像\n3.Clean All !!!"
read -p "请按序号输入选择后续操作 : " choose

if [ $choose -eq 1 ];then
sleep 1;
echo "=============================================================================="
cleanlog
fi
if [ $choose -eq 2 ];then
sleep 1;
echo "=============================================================================="
cleandockerimage
fi
if [ $choose -eq 3 ];then
cleanlog
cleandockerimage
fi

原文地址:http://blog.51cto.com/13958766/2295919

时间: 2024-10-13 03:22:10

shell脚本定时清除messages日志及TAG为none的docker images的相关文章

采用shell脚本定时清理Tomcat日志

1 Shell脚本案例 删除超过30天的日志文件 #!/bin/bash log_path=/mnt/software/apache-tomcat-9.0.0.M22/logs d=`date +%Y-%m-%d` d90=`date -d'30 day ago' +%Y-%m-%d` #cd ${log_path} && cp catalina.out $log_path/cron/catalina.out.$d.log #echo > catalina.out rm -rf $l

【转载】MySQL被慢sql hang住了,用shell脚本快速清除不断增长的慢sql的办法

原文地址:MySQL被慢sql hang住了,用shell脚本快速清除不断增长的慢sql的办法 作者:mchdba 某个初级dba误删index,mysql漫山遍野全是10S以上的慢sql,mysql服务被hang住了,而且慢sql不断在增加中,如果手动在mysql界面kill的话,根本来不及,这个时候,shell就必须要出手了,如下的shell脚本,大家可以参考: #It is used to kill processlist of mysql sleep #!/bin/sh while :

在CentOS6.9上Shell脚本定时释放内存cache

一.写Shell脚本 mkdir -p /var/script/ vim /var/script/freemem.sh 写入以下Shell脚本: #!/bin/bash # 当前已使用的内存大小 used=`free -m | awk 'NR==2' | awk '{print $3}'` # 当前剩余的内存大小 free=`free -m | awk 'NR==2' | awk '{print $4}'` echo "===========================" >

shell脚本定时执行php程序

首先写好你需要执行的php程序 我这里呢就是一个PDO链接 写入一个时间 然后我们写一个shell脚本来执行这个php程序 就单纯的一个执行php程序的shell就写好了,然后咱们运行一下 好,显示插入成功,证明这个shell是可以执行的. 然后咱们写一个crontab的定时任务 然后介绍一下五个星星分别表示什么: minute - 分钟 ,从0到59之间的任何整数 hour - 小时, 从0到23之间的任何整数 day - 天, 从1到31之间的任何整数(如果指定了月份,必须是该月份的有效日期

shell脚本实践清除日志

在生产环境中日志是运维人员了解和分析生产环境的第一手资料,但是日志信息的内容量相当庞大,特别在公有云环境中运行的业务系统,一般系统盘在20G-40G左右,如果没有合理的日志管理方案,很容易出现存储空间不够的现象,总结了以下几种日志处理的简单方式,作为自己的实践笔记,同时和大家一起交流学习. 1.部分日志行数太多,时间周期比较久,里面没有什么很重要的价值信息,我们可以删除前面固定行数的日志文件: find  /usr/app/    -name  filename -exec  sed  -i  

shell脚本实现查看tomcat日志

背景: 目前所有项目的部署路径都是/home/application_name/logs/catalina.out,每次查个log,都得进很深的目录,很麻烦,浪费时间.而且来来回回就几个命令. 需求: 查看项目实时输出的日志 脚本名称:cat_catalina_log.sh 脚本运行方式:sh  cat_catalina_log.sh  tomcat-8108 代码: #!/bin/bash tail -f /home/$1/logs/catalina.out 知识点: shell 传参 原文地

SHELL脚本监控oracle alert日志

监控alert 日志 思路:按alert日志行号取当前最后一行和上一次扫描的行对比 大于等于上一次扫描的行 就从上一次扫描的行开始 扫描到最后一行 #!/bin/bash scriptHome=`dirname $0` scriptName=`basename $0` logDir=$scriptHome/logs #logfile=$logDir/$scriptName_$(date "+%Y%m%d").log logfile=$logDir/ora-error.log runfi

shell脚本:检查ftp日志存储服务器上的日志是否正常上传

脚本:check_log.sh 主要功能:用于检查日志文件是否上传到ftp服务器,若未上传的,则发邮件报警 ------------------- #!/bin/bash #Auto check log files and notice by email #By colin #Revision on 2015-11-03 # #Useage: ./check_log.sh /home/upload/  # 10 * * * * /root/check_log.sh # #############

shell脚本:nginx访问日志切割与打包上传

脚本功能: 日志切割类脚本,包含:nginx的访问日志.网关设备.AC设备.认证信息等等日志,都通过ftp上传到相应的服务器进行保存. --------------- #!/bin/bash # Cut and upload nginxlog # by colin # revision on 2016-02-22 ######################################## # 功能说明:该脚本运用于切割与上传nginxlog # # 更新说明: # ############