#!/usr/bin/env bash function printargs { echo "arguments:" ii=0 for arg; do printf " %u: '%s'\n" "$ii" "$arg" ((ii++)) done } # usage: # # $ source ex.sh # $ printargs a b c # arguments: # 0: 'a' # 1: 'b' # 2: 'c' function another { echo "printing arguments passed to 'another'..." printargs "$@" echo "...done." } # example: # $ another "g h" 1 # printing arguments passed to 'another'... # arguments: # 0: '' # 1: 'g h' # 2: '1' # ...done.