#!/usr/bin/env bash # ---------------------- # sf -- script framework # ---------------------- # Declare sf variables sfdesc="Calculate the sum of multiple numbers." sfargs+=("NUMBERS;Numbers which will be added") sfargs+=("verbose;v;Enable verbose output") sfparr=true # Treat the last declared positional argument as array # Include sf, this could be replaced with a long oneliner source "$(dirname $0)/../sf" # ---------------------- # Actual script # ---------------------- sum=0 for n in "${NUMBERS[@]}"; do # Use parsed positional argument array if [ "$verbose" == true ]; then # Use parsed flag echo -n "$sum + $n = " fi sum="$(expr $sum + $n)" if [ "$verbose" == true ]; then # Use parsed flag echo "$sftbf$sum$sftrs" # Use text formatting variables fi done echo "The sum is: $sftbf$sum$sftrs" # Use text formatting variables