【发布时间】:2017-08-18 12:21:35
【问题描述】:
我有一个非常简单的 BASH 脚本,它询问用户是否想输入一些输入。回复是y 或n
如果他们输入n,则脚本退出。
如果他们输入y,那么他们会被问一些问题。最后我想请他们确认输入。
如果正确,我们会继续,如果不是,我想返回问题以重新输入信息。
到目前为止,我得到了:
while true; do
echo -e "Enter details ? "
read yn
case $yn in
[Nn]* ) exit;;
[Yy]* )
echo -e "description"
read desc
echo -e "Address"
read address
* ) echo "Please answer yes or no.";;
esac
done
这似乎工作正常,所以我尝试添加确认..但这不起作用。
while true; do
echo -e "Enter details ? "
read yn
case $yn in
[Nn]* ) exit;;
[Yy]* )
echo -e "description"
read desc
echo -e "Address"
read address
echo -e "$desc - $address"
while true; do
echo -e "\nAre these details correct ? "
read conf
case $conf in
[Nn]* ) // return to enter details //
[Yy]* ) // carry on with the details entered // break;;
esac
done
* ) echo "Please answer yes or no.";;
esac
done
目标如下
用户选择y 并输入描述和地址。该页面向他们显示了他们输入的内容的摘要,并询问他们are these details correct ? 他们是否我们继续前进并且脚本继续进行。输入错误然后脚本返回它们以输入描述,然后输入地址。
有人可以建议如何做到这一点。 谢谢
【问题讨论】: