Linux shell 一一 在脚本中使用select创建文本菜单

前言

在创建文本菜单时候,如果不用select或者dialog命令创建文本菜单,可能会花一半的时间在建立菜单布局和获取用户输入上。

select命令

select命令只需要一条命令就可以创建菜单,然后获取输入的答案并自动处理。select命令的格式如下:

select variable in list
do  
    commands
done

list参数是由空格分隔的文本选项列表,这些列表构成了整个菜单。select命令会将每个列表项显示成一个带编号的选项,然后为选项显示一个PS3环境变量定义的特殊提示符。

下面用一个例子介绍select的使用:

#!/bin/bash

#在菜单中使用select命令

function diskspace
{
   clear
   df -k
}

function whoseon
{
  clear
  who
}

function memusage
{
  clear
  cat /proc/meminfo
}

PS3="Enter option: "
select option in "Display disk space" "Display logged on users" \
"Display memory usage" "Exit program"
do
   case $option in
   "Exit program")
       break ;;
   "Display disk space")
       diskspace ;;
   "Display logged on users")
       whoseon ;;
   "Display memory usage")
       memusage ;;
   *)
      clear
      echo "Sory, wrong selection" ;;
  esac
done
clear

输出结果:
在这里插入图片描述
这里需要注意一下,select语句中所有的内容必须作为一行出现。这可以从行接续字符中看出。

总结

在使用select命令时,记住,存储在变量中的结果值是整个文本字符串而不是跟菜单选项相关联的数字。文本字符串值才是你要case语句中的进行比较的内容。

参考:Linux命令行与shell脚本编程大全

发布了71 篇原创文章 · 获赞 42 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/chen1415886044/article/details/103357400