Bash - Как я могу сделать меню выбора zip-файлов в зависимости от того, сколько zip-файлов в каталоге?

Я делаю скрипт инструмента темы . Я хочу создать меню выбора zip-файлов (zip-файл содержит тему) в каталоге, тогда пользователи будут выбирать zip-файл, который они хотят установить

Пример: в / theme / zipfiles / есть theme1.zip, theme2.zip , theme3.zip (пользователи могут добавить другие zip-файлы темы)

И я хочу перечислить эти zip-файлы в скрипте следующим образом:

Choose a theme zip file to install:
1) theme1.zip
2) theme2.zip
3) theme3.zip
# When users add more zip files and this menu will display more

Затем я набираю 1 и Enter. Должен быть установлен theme1.zip

0
07.07.2016, 02:10
1 ответ

Вы можете использовать select .Сначала установите $ PS3 для приглашения, а затем используйте select как цикл, прерываясь, когда у вас есть правильные данные, чтобы получить желаемую информацию:

PS3="Choose a theme zip file to install:"
select theme_file in *.zip; do
    [[ -f "$theme_file" ]] && break
done

echo "Installing ${theme_file%.zip} from ${theme_file}..."
1
28.01.2020, 02:48

Теги

Похожие вопросы