diff --git a/functions/update_apps.sh b/functions/update_apps.sh index 7af4f387..2c01edb0 100644 --- a/functions/update_apps.sh +++ b/functions/update_apps.sh @@ -11,12 +11,14 @@ count=0 for i in "${array[@]}" do update_apps "$i" & - (( count++ )) processes+=($!) - while [[ "$count" -ge "$update_limit" ]] + proc_count=0 + while [[ "${#processes[@]}" -ge "$update_limit" ]] do echo "waiting for free space" - wait -n "${processes[@]}" &> /dev/null && (( count-- )) + wait -n "${processes[$proc_count]}" &> /dev/null + (( proc_count++ )) + unset "processes[$proc_count]" done done