Script bash Linux per matar processos fdserver que no tenen associada una connexió:
#/bin/bash # Matar processos FDServer que no tenen una connexió assignada # 16/10/2018 David Marti # SINTAXI: ./kproc [matar] # Si s'especifica el paramatre opcional [matar] es mataran els processos candidats echo "Inici de proces ..." matar=0 if [ "$1" = "matar" ]; then matar=1 echo "ATENCIO: Es mataran els processos candidats" else echo "(Els processos candidats no es mataran, tranquil)" fi procs=$(ps -ef | awk '{print $2 " " $8}' | grep -i fdserver | awk '{print $1}') echo "Processos FDServer = " $procs conn=$(netstat -anp | grep fdserver | awk '{print $7}' | awk -F'/' '{print $1}') echo "Connexions FDServer = " $conn notrobats=0 trobats=0 matats=0 for p in $procs do trobat=0 for c in $conn do if [ $p = $c ]; then trobat=1 ((trobats++)) break fi done if [ "$trobat" == "0" ]; then ((notrobats++)) echo Proces $p no trobat, candidat a morir ... echo DETALL: $(ps -p $p -o etime -o comm= -o cmd) if [ $matar == "1" ]; then kill -9 $p echo Proces $p matat! ((matats++)) fi fi done echo "* Trobats = $trobats" echo "* No trobats = $notrobats" echo "* Matats = $matats" echo Fi del proces