#!/bin/bash # recursion-demo.sh # Demonstration of recursion. RECURSIONS=9 # How many times to recurse. r_count=0 # Must be global. Why? recurse () { var="$1" while [ "$var" -ge 0 ] do echo "Recursion count = "$r_count" +-+ \$var = "$var"" (( var-- )); (( r_count++ )) recurse "$var" # Function calls itself (recurses) done #+ until what condition is met? } recurse $RECURSIONS exit $?