我正在做一个主题工具脚本。我想在目录中制作一个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
并回车。 theme1.zip 应该正在安装
答案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}..."