如何编写Bash脚本来显示菜单,接受用户输入和显示数据?

时间:2010-01-09 12:18:51

标签: bash

我想为我的作业编写带有用户输入的Bash脚本,称为“书店服务”。首先,它有选项菜单,如“添加新书名”“作者姓名”“删除书籍”“更新”“搜索”“显示书籍列表”“退出”。如果我选择选项1,我必须输入新书的名字。当我选择“show book list”选项时,如何编写用户输入并显示输出数据。我在这个作业中遇到了麻烦。请有人帮我澄清这一点,这对你们所有人都非常有帮助和感激。

4 个答案:

答案 0 :(得分:10)

查看select声明。它允许您创建菜单。

PS3="Please choose an option "
select option in go stay wait quit
do
    case $option in
        go) 
            echo "Going";;
        stay|wait) 
            echo "Standing by";;
        quit)
            break;;
     esac
done

看起来像是:

1) go
2) stay
3) wait
4) quit
Please choose an option

修改

您的一个选项可能会提示用户输入:

read -rp "Enter a phrase: " phrase
echo "The phrase you entered was $phrase"

答案 1 :(得分:3)

您可能需要查看WhiptailDialog哪个可以在终端内创建图形界面。

Herehere是如何使用whiptail的好资源。

this问题的答案是如何使用Dialog

的一个很好的例子

enter image description here

答案 2 :(得分:1)

以下是一个代码示例,演示了如何阅读用户输入:http://tldp.org/LDP/abs/html/internal.html#READR

您也可以使用CLI参数:

test.sh

echo $1

CLI:

$ ./test.sh testinput
testinput

答案 3 :(得分:0)

你应该查看this page如何使用case / esac或选择创建菜单

另外,不要忘记开始阅读整个文档以了解shell脚本