Files
qt5-legatus-legacy/Lts/Tools/remove_old_coredumps
T
2026-08-13 18:33:10 +02:00

93 lines
1.9 KiB
Bash
Executable File

#!/bin/sh
## --------------------------------------------------------------------
## $HeadURL$
## --------------------------------------------------------------------
##!
## --------------------------------------------------------------------
## COPYRIGHT (C) 1999: Rehinemtall Electronics GMBH, D-28305 BREMEN
## --------------------------------------------------------------------
##
## HIER/ITEM : CSU: RP 5182 Q 100 SRC 00102
## BRIEF DESC: remove corefiles from '/tmp/coredumps' to fall below x%
## AUTHOR : Norbert Thoden
## RELEASE :
## MODIF/STAT: 27.10.20
## ORIGIN REF:
##
## Revision INFO:
## --------------
## $Revision$
## $Date$
## $Id$
##
## LANGUAGE: (TCL/TK-Version)
##
## PURPOSE:
##
## ERROR HANDLING:
## keine
##
##!
# /tmp/coredumps is most likely a symlink to /coredumps
dir=/tmp/coredumps
max_usage=70
usage()
{
echo "usage: `basename "$0"` y - (y = yes) - to remove corefiles from '${dir}' to fall below $max_usage%"
exit 1
}
if [ $# -ne 1 ] || [ $1 != y ]; then
usage
exit 1
fi
if [ ! -d "$dir" ]; then
echo "'${dir}' does not exist... exit"
exit
fi
usep=$(df -H | grep coredumps | awk '{print $5}' | cut -d '%' -f1)
if [ $usep -ge $max_usage ]; then
echo "Dir '$dir' exceeds limit, $usep % used..."
else
echo "Dir '$dir' is used by $usep% -> exit"
exit
fi
echo "Remove oldest files files from '$dir' to fall below $max_usage%..."
remove_older()
{
days=$1
echo " remove files older '${days}' ..."
# find /coredumps -mtime +${days} -exec ls -lisa {} \;
find /coredumps -mtime +${days} -exec rm -vf {} \;
}
## loop as long as usage is high ; max 10 times
age=100
while [ $usep -ge $max_usage ] && [ "$age" -gt 0 ];
do
age=$((age-10))
echo " age'${age}' ..."
remove_older $age
usep=$(df -H | grep coredumps | awk '{print $5}' | cut -d '%' -f1)
done
# Finally:
usep=$(df -H | grep coredumps | awk '{print $5}' | cut -d '%' -f1)
echo "Dir '$dir' is used by $usep %"