diff --git a/kill-wpull-connections b/kill-wpull-connections index 817ef6e..ed1c756 100644 --- a/kill-wpull-connections +++ b/kill-wpull-connections @@ -21,13 +21,7 @@ then fi elif [[ "$1" == '-j' ]] then - pids=($(pgrep --full "wpull.*$2")) - - # Filter out this script; this is more complicated than it should be because you can't simply `| grep -v` the PID of this script. When you do that, you create a subshell, which you'd need to filter out as well. - # Instead, we convert the list to a string of the form " 1 2 3 ", then replace " PID " by a single space, and finally convert it back to an array for counting the remaining PIDs. - pids=" ${pids//$'\n'/ } " - pids=(${pids/ $$ / }) - + pids=($(pgrep --full "wpull.*/$2/")) if [[ ${#pids[@]} -ne 1 ]] then echo "Error: not exactly one process found for '$2'"