Sometimes you may need to kill hanged processes with high CPU usage automatically. the following script can help you to do it :
#!/bin/bash PROCESSNAME='' HL=10 IFS=$'\n' L=$(ps aux | grep $PROCESSNAME) for fn in $L; do PID=$(echo $fn | awk '{print $2'}) LOAD=$(echo $fn | awk '{print $3'}) if [ $(echo "$LOAD > $HL" | bc -l ) -eq 1 ] then kill -9 $PID echo "Killed $PID" fi done
Set PROCESSNAME to the process name which you want to be checked and HL to high load threshold.
Please note the load is based what ‘ps’ command reports and not what you see inside ‘top’.