shell脚本定时清除messages日志及TAG为none的docker images
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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
$docker_none"
else
echo -e "==============================================================================
无TAG为none的docker image
已退出当前脚本"
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列表
$docker_image"
done
if [ ${delimage} = "no" ];then
exit 0
fi
fi
return 0
}
echo -e "目前磁盘状态
==============================================================================
$disk"
echo -e "
==============================================================================
磁盘垃圾清理"
echo -e "1.清理系统日志
2.清理Docker镜像
3.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
以上是关于shell脚本定时清除messages日志及TAG为none的docker images的主要内容,如果未能解决你的问题,请参考以下文章