返回bash中的菜单



我想回到程序的起点,而不是用Break命令退出它?例如,如果我运行它,我会选择1来添加一条记录,我会制作该记录,然后当我按下q时,我会回到的同一菜单

  • "1-添加记录">
  • "2-删除记录">
  • "3-搜索记录">
  • "q-退出">

而不是直接退出程序

#!/bin/bash
addtoRecord()
{
echo
while true
do
echo "to add a record to your address book, enter the info in this format:"
echo "name,last name,@mail.com,123456789"
echo "to quit enter 'q'."
read aInput
if [ "$aInput" == 'q' ]
then
break
fi
echo
echo $aInput >> addressbook.txt
echo
done
}
{
echo "1 - add a record"
echo "2 - remove record"
echo "3 - search records"
echo "q - to quit"
read input
case $input in
1) addtoRecord;;
2) removeRecord;;
3) searchRecord;;
q) exit 
esac
}

一个简单的while循环应该做到这一点:

while : ; do
echo "1 - add a record"
echo "2 - remove record"
echo "3 - search records"
echo "q - to quit"
read input
case $input in
1) addtoRecord;;
2) removeRecord;;
3) searchRecord;;
q) exit 
esac
done

最新更新