我有一个复杂的菜单驱动程序,大致如下:
echo "Navigate through the following choices when you get the #? prompt: "
options=("Action 1" "Action 2" ...)
select $opt in "${options[@]}"
do
case $opt in
"Action 1")
./action1.sh
;;
"Action 2")
./action1.sh
;;
...
esac
done
(将其视为一个简单的待办事项列表应用程序,您可以在其中添加/删除/编辑/查看待办事项列表项。因此,添加、删除等就是操作)
其中一些action
有点长,因此操作进行到一半时,用户可能会改变主意并希望返回主提示来尝试其他操作。
我的问题是如何让用户返回主提示?我希望有一个简单的按键处理程序,可以让用户跳转到select
.有可能或者有其他方法吗?
答案1
您可以重新启动主程序。
# User wants to return to main
exec main.sh
这将删除您当前正在运行的脚本并将其替换为main.sh
.
请注意,只有导出的变量在新启动的main.sh
.