diff --git a/cmake_targets/autotests/tools/remove_old_programs.bash b/cmake_targets/autotests/tools/remove_old_programs.bash
index d494847b414e93d386a9bd6f3862f4baa9ef03c5..3352dc7053a663a4fc9c9e8af758a97c35410aa5 100755
--- a/cmake_targets/autotests/tools/remove_old_programs.bash
+++ b/cmake_targets/autotests/tools/remove_old_programs.bash
@@ -3,12 +3,19 @@
 #$1 programs to be killed and checked
 echo "removing old programs..."
 echo "args = $1"
+echo "script name = $0"
+filename=$(basename "$0")
 echo "programs to be killed"
-ps -aux |grep -E -i $1
+echo "bash PID = $$"
+pid='$$'
+#we need to remove current program and grip as we kill ourselves otherwise :)
+var=`ps -aux |grep -E -i $1 | awk '{print $2}'`
 
-ps -aux |grep -E -i $1| awk '{print $2}' | sudo xargs kill -9 
+echo $var
+
+echo "$var" | sed 's/'$$'/ /' | sudo xargs kill -9
 
-var=`ps -aux |grep -E -i $1`
+var=`ps -aux |grep -E -i $1| grep -E -v '$filename|grep|$$'`
 echo $var
 if [ -n "$var" ]; then echo 'Match found'; else echo 'Match not found' ;fi