satcmd.skel 1.9KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. #!/bin/bash
  2. . "$(shellfu-get path)" || exit 3
  3. shellfu import exit
  4. shellfu import inigrep
  5. shellfu import pretty
  6. #
  7. # =====BEGIN BUILT PART=====
  8. #
  9. SHELLFU_INIGREP_PATH="$(
  10. inigrep__mkpath \
  11. __SATURNIN_CONFIG_USER__/ini.d \
  12. __SATURNIN_CONFIG_USER__ \
  13. __SATURNIN_CONFIG_LOCAL__ \
  14. __SATURNIN_SHARE__/ini.d
  15. )"
  16. SHELLFU_PATH="__SATURNIN_SHELLFU_DIR__"
  17. SHELLFU_PRETTY_USAGE="subcommand"
  18. SATURNIN_CACHE_HOME="__SATURNIN_CACHE_HOME__"
  19. SATURNIN_LIBEXEC="__SATURNIN_LIBEXEC__"
  20. SATURNIN_LIBEXEC_PREFIX="satcmd-"
  21. SATURNIN_APP_VERSION="__MKIT_PROJ_VERSION__"
  22. SATURNIN_APP_TAGLINE="__MKIT_PROJ_TAGLINE__"
  23. #
  24. # =====END BUILT PART=====
  25. #
  26. shellfu import saturnin
  27. export SHELLFU_INIGREP_PATH SHELLFU_PATH SHELLFU_PRETTY_USAGE \
  28. SATURNIN_APP_VERSION SATURNIN_CACHE_HOME
  29. usage() {
  30. mkusage "[-d|-v] command [args...]" \
  31. "help" \
  32. "--version"
  33. }
  34. while true; do case $1 in
  35. -d|--debug) export SHELLFU_DEBUG=true; shift ;;
  36. -v|--verbose) export SHELLFU_VERBOSE=true; shift ;;
  37. --version) saturnin__version; exit ;;
  38. --version-semver) echo "$SATURNIN_APP_VERSION"; exit ;;
  39. -*) usage; ;;
  40. --*) usage; ;;
  41. --) shift; break ;;
  42. "") usage; ;;
  43. *) break; ;;
  44. esac done
  45. debug -v SHELLFU_PATH SATURNIN_LIBEXEC SHELLFU_INIGREP_PATH
  46. debug "\$*='$*'"
  47. export SATURNIN_SUBCOMMAND="$1"
  48. shift
  49. case "$SATURNIN_SUBCOMMAND" in
  50. conf) inigrep "$@" ;;
  51. help) saturnin__help ;;
  52. _ls_subcommands) saturnin__lssc ;;
  53. _lsfun) shellfu-get lsfun ;;
  54. _lsmod) shellfu-get lsmod ;;
  55. _ffrun) ffrun "$@" ;;
  56. *) saturnin__runsc "$@" ;;
  57. esac