[NEW] dynamic_main: New dynamic main/argv helper!
See t/dynamic_main.bash for an early example of how to use it.
This commit is contained in:
parent
70100bfce3
commit
3830737655
2 changed files with 28 additions and 0 deletions
18
dynamic_main.bash
Normal file
18
dynamic_main.bash
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
command -v dedcat || \
|
||||
source "$(dirname ${BASH_SOURCE[0]})/logging.bash"
|
||||
|
||||
[ -z "${fns[@]}" ] && dedcat 'ERROR: Empty or undefined ${fns[@]} array!'
|
||||
|
||||
read -d '' HELPSTR <<EOH
|
||||
Usage: $0 OPERATION
|
||||
$EXTRA_NOTE
|
||||
Operations:
|
||||
$(for fn in ${fns[@]}; do echo " $fn: $($fn help)"; done)
|
||||
EOH
|
||||
|
||||
[[ " ${fns[*]} " =~ [[:space:]]${1}[[:space:]] ]] \
|
||||
|| dedcat "$HELPSTR"
|
||||
|
||||
op="$1"
|
||||
shift
|
||||
$op $@
|
||||
Loading…
Add table
Add a link
Reference in a new issue