Ciao ragazzi,
ho debuggato lo script ed ora funziona molto bene.

Lo posto qualora serva a qualcuno:

Codice PHP:
if [ "$1" "" ]; then
 
echo "Specificare username"
 
exit 1
fi
if [ "$2" "" ]; then
 
echo "Specificare processi da lasciare attivi."
 
exit 1
fi

echo "---> Output ps aux"
ps aux grep "$1" grep "postgres" grep "idle"
ps aux grep "$1" grep "postgres" grep "idle" awk '{ print $2}'  kill_processo.tmp

cp kill_processo
.tmp _kill_processo.tmp

NUMERO_RIGHE
=`wc -l _kill_processo.tmp | awk '{ print $1 }'`

NUMERO_RIGHE=`expr $NUMERO_RIGHE + -$2`

echo 
"---> Cancellare $NUMERO_RIGHE processi."

X=1
while [ $X -le $NUMERO_RIGHE ]
do
   
PID=`head -n 1 _kill_processo.tmp`

   echo 
"kill $PID"
   
kill $PID

   NUMERO_RIGHE_TMP
=`wc -l _kill_processo.tmp | awk '{ print $1 }'`

   
RIGHE_ERASE=`expr $NUMERO_RIGHE_TMP + -1`
   
   
tail -n $RIGHE_ERASE _kill_processo.tmp _kill_processo.tmp2 
   cp  _kill_processo
.tmp2 _kill_processo.tmp 
 
   X
=`expr $X + 1`
done

rm 
-f _kill_processo.tmp
rm 
-f _kill_processo.tmp2