fixed usage of BUILD_BEFORE which was erroneoulsy being used instead of FIRST_TARGETS...
[feisty_meow.git] / scripts / core / functions.sh
index 3b3c95e213f21871df2a5d9cab3b75dfdcda3014..3024f8200ece981d94c4eb1fd52eaeab8400d18d 100644 (file)
@@ -77,9 +77,8 @@ if [ -z "$skip_all" ]; then
   # locates a process given a search pattern to match in the process list.
   function psfind() {
     local -a patterns=("${@}")
-    mkdir $TEST_TEMP/grid_logs &>/dev/null
     local PID_DUMP="$(mktemp "$TMP/zz_pidlist.XXXXXX")"
-    local PIDS_SOUGHT=()
+    local -a PIDS_SOUGHT
     if [ "$OS" == "Windows_NT" ]; then
       # needs to be a windows format filename for 'type' to work.
       if [ ! -d c:/tmp ]; then
@@ -99,10 +98,10 @@ if [ -z "$skip_all" ]; then
       # we 'type' the file to get rid of the unicode result from wmic.
       cmd $flag type "$tmppid" >$PID_DUMP
       \rm "$tmppid"
-      local CR='
-'  # embedded carriage return.
-      local appropriate_pattern="s/^.*  *\([0-9][0-9]*\)[ $CR]*\$/\1/p"
-      local -a PIDS_SOUGHT
+#      local CR='
+#'  # embedded carriage return.
+#      local appropriate_pattern="s/^.*  *\([0-9][0-9]*\)[ $CR]*\$/\1/p"
+      local appropriate_pattern="s/^.*  *\([0-9][0-9]*\) *\$/\1/p"
       for i in "${patterns[@]}"; do
         PIDS_SOUGHT+=($(cat $PID_DUMP \
           | grep -i "$i" \
@@ -115,7 +114,6 @@ if [ -z "$skip_all" ]; then
       # remove the first line of the file, search for the pattern the
       # user wants to find, and just pluck the process ids out of the
       # results.
-      local -a PIDS_SOUGHT
       for i in "${patterns[@]}"; do
         PIDS_SOUGHT+=($(cat $PID_DUMP \
           | sed -e '1d' \
@@ -124,7 +122,9 @@ if [ -z "$skip_all" ]; then
       done
     fi
     if [ ${#PIDS_SOUGHT[*]} -ne 0 ]; then
-      PIDS_SOUGHT=$(echo ${PIDS_SOUGHT[*]} | sort | uniq)
+      local PIDS_SOUGHT2=$(printf -- '%s\n' ${PIDS_SOUGHT[@]} | sort | uniq)
+      PIDS_SOUGHT=()
+      PIDS_SOUGHT=${PIDS_SOUGHT2[*]}
       echo ${PIDS_SOUGHT[*]}
     fi
     /bin/rm $PID_DUMP
@@ -137,13 +137,13 @@ if [ -z "$skip_all" ]; then
       echo "psa finds processes by pattern, but there was no pattern on the command line."
       return 1
     fi
-    p=$(psfind "$1")
+    p=$(psfind "${@}")
     if [ -z "$p" ]; then
       # no matches.
       return 0
     fi
     echo ""
-    echo "Processes containing \"$1\"..."
+    echo "Processes matching ${@}..."
     echo ""
     if [ -n "$IS_DARWIN" ]; then
       unset fuzil_sentinel