shell腳本定時清除messages日誌及TAG為none的docker images
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
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
else
echo -e "==============================================================================\n無TAG為none的docker image\n已退出當前腳本"
exit 0
fi
read -p "是否繼續刪除,請輸入(yes/no) " delimage
if [ ${delimage} = "yes" ];then
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
shell腳本定時清除messages日誌及TAG為none的docker images