satcmd.skel 1.8KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #!/bin/bash
  2. . $(ffoom path) || exit 3
  3. ffoo import exit
  4. ffoo import inigrep
  5. ffoo import pretty
  6. #
  7. # =====BEGIN BUILT PART=====
  8. #
  9. FFOO_INIGREP_PATH="$(
  10. inigrep__mkpath \
  11. __SATCMD_CONFIG_USER__/ini.d \
  12. __SATCMD_CONFIG_USER__ \
  13. __SATCMD_CONFIG_LOCAL__ \
  14. __SATCMD_SHARE__/ini.d
  15. )"
  16. FFOO_PATH="__SATCMD_FFOO_DIR__"
  17. FFOO_PRETTY_USAGE="subcommand"
  18. SATCMD_CACHE_HOME="__SATCMD_CACHE_HOME__"
  19. SATURNIN_LIBEXEC="__SATCMD_LIBEXEC__"
  20. SATURNIN_LIBEXEC_PREFIX="satcmd-"
  21. SATCMD_VERSION="__VERSION__"
  22. #
  23. # =====END BUILT PART=====
  24. #
  25. ffoo import saturnin_meta
  26. export FFOO_INIGREP_PATH FFOO_PATH FFOO_PRETTY_USAGE \
  27. SATCMD_VERSION SATCMD_CACHE_HOME
  28. usage() {
  29. mkusage "[-d|-v] command [args...]" \
  30. "help" \
  31. "--version"
  32. }
  33. version_info() {
  34. echo "$(basename "$0") (Example saturnin-bases command) $SATCMD_VERSION"
  35. exit "$FFOO_EXIT_OK"
  36. }
  37. while true; do case $1 in
  38. -d|--debug) export FFOO_DEBUG=true; shift ;;
  39. -v|--verbose) export FFOO_VERBOSE=true; shift ;;
  40. --version) version_info ;;
  41. --version-semver) echo "$SATCMD_VERSION"; exit ;;
  42. -*) usage; ;;
  43. --*) usage; ;;
  44. --) shift; break ;;
  45. "") usage; ;;
  46. *) break; ;;
  47. esac done
  48. debug -v FFOO_PATH SATURNIN_LIBEXEC FFOO_INIGREP_PATH
  49. debug "\$*='$*'"
  50. export SATURNIN_SUBCOMMAND="$1"
  51. shift
  52. case "$SATURNIN_SUBCOMMAND" in
  53. conf) inigrep "$@" ;;
  54. help) saturnin_help ;;
  55. _ls_subcommands) saturnin_lssc ;;
  56. _lsfun) ffoom lsfun ;;
  57. _lsmod) ffoom lsmod ;;
  58. _ffrun) ffrun "$@" ;;
  59. *) saturnin_runsc "$@" ;;
  60. esac