【发布时间】:2013-08-30 09:01:12
【问题描述】:
我正在编写一个脚本,该脚本读取路径中的目录并提示用户选择女巫目录。到目前为止的脚本如下所示:
select choises in ${list_files[@]}; do
if CONTAINS_ELEMENT $choises "${list_files[@]}"; then
break
else
echo "invalid choise (PS use the ID numbers)! Try again:"
fi
done
“CONTAINS_ELEMENT”这个东西是一个检查变量 $choises 是否是 list_files 数组的成员的函数。该脚本运行良好,输出如下:
1) first_folder
2) second_folder
3) yet_another_folder
用户可以通过输入相应的ID值来选择巫婆文件夹(即“second_folder”为“2”)。
我正在努力解决的是:有没有办法检查提供的答案是否是正确的数字或正确的文件名?如果你可以手动写入文件名,有没有办法在这个脚本中实现名称完成?
对选择的实际回复保存在变量 $REPLY 中,我需要以某种方式检查 $choises 和 $REPLY。我怀疑完成机制要复杂得多..
这里有人有好的建议吗?如果您能帮助我获得这些功能,那将是非常酷的!
【问题讨论】:
标签: bash select autocomplete tab-completion