updated to uniquify list of process ids found.
authorChris Koeritz <fred@gruntose.com>
Sat, 8 Mar 2014 21:39:40 +0000 (16:39 -0500)
committerChris Koeritz <fred@gruntose.com>
Sat, 8 Mar 2014 21:39:40 +0000 (16:39 -0500)
scripts/core/functions.sh

index 286d6f5c7effc8722660b582548fd533c5be0ae9..3b3c95e213f21871df2a5d9cab3b75dfdcda3014 100644 (file)
@@ -85,14 +85,12 @@ if [ -z "$skip_all" ]; then
       if [ ! -d c:/tmp ]; then
         mkdir c:/tmp
       fi
-      # windows7 magical mystery tour lets us create a file c:\\tmp_pids.txt, but then it's not really there
-      # in the root of drive c: when we look for it later.  hoping to fix that problem by using a subdir, which
-      # also might be magical thinking from windows perspective.
+      # windows7 magical mystery tour lets us create a file c:\\tmp_pids.txt, but then it's not
+      # really there in the root of drive c: when we look for it later.  hoping to fix that
+      # problem by using a subdir, which also might be magical thinking from windows perspective.
       tmppid=c:\\tmp\\pids.txt
-      # we have abandoned all hope of relying on ps on windows.  instead
-      # we use wmic to get full command lines for processes.
-      # this does not exist on windows home edition.  we are hosed if that's
-      # what they insist on testing on.
+      # we have abandoned all hope of relying on ps on windows.  instead we use wmic to get full
+      # command lines for processes.
       wmic /locale:ms_409 PROCESS get processid,commandline </dev/null >"$tmppid"
       local flag='/c'
       if [ ! -z "$(uname -a | grep "^MING" )" ]; then
@@ -125,7 +123,10 @@ if [ -z "$skip_all" ]; then
           | sed -n -e "$appropriate_pattern"))
       done
     fi
-    if [ ${#PIDS_SOUGHT[*]} -ne 0 ]; then echo ${PIDS_SOUGHT[*]}; fi
+    if [ ${#PIDS_SOUGHT[*]} -ne 0 ]; then
+      PIDS_SOUGHT=$(echo ${PIDS_SOUGHT[*]} | sort | uniq)
+      echo ${PIDS_SOUGHT[*]}
+    fi
     /bin/rm $PID_DUMP
   }