diff options
| -rwxr-xr-x | menu.sh | 54 |
1 files changed, 54 insertions, 0 deletions
@@ -0,0 +1,54 @@ +#!/usr/bin/env bash + +source "./lib/environment.sh" + +#****h* archisofiles/menu.sh +# NAME +# +# menu.sh - меню для выбора скрипта из BIN_DIR. +# +# EXAMPLE +# +# chmod +x ./menu.sh +# ./menu.sh +#****** + +#****D* archisofiles/bin +# NAME +# +# bin - папка с основными скриптами. +#****** + +#****D* archisofiles/lib +# NAME +# +# lib - папка с вспомогательными скриптами. +#****** + +declare -a options + +for script in "$BIN_DIR"/*; do + if [[ -f "$script" && -x "$script" ]]; then + options+=("$(basename "$script")") + fi +done +options+=("Выход") + +PS3="Выбери действие (введи номер): " + +echo "Доступные скрипты в $BIN_DIR:" +select action in "${options[@]}"; do + case "$action" in + "Выход") + echo "Выход." + break + ;; + "") + echo "Неверный выбор. Попробуй ещё раз." + ;; + *) + echo "Запускаю \"$action\"..." + "$BIN_DIR/$action" + ;; + esac +done |
