码迷,mamicode.com
首页 > 系统相关 > 详细

shell练习(11)——运用case进行菜单选择

时间:2018-12-11 19:50:54      阅读:304      评论:0      收藏:0      [点我收藏+]

标签:please   添加   菜单   题目   not   习题   who   ase   ber   

1. 习题

设计一个脚本,让用户输入数字选择要执行的命令。例如,输出如下的提示,让用户输出指令。

*cmd meau** 1-date 2-ls 3-who 4-pwd

然后脚本将执行的结果输出到屏幕

2. 分析

提示出入选择的,用case 命令最合适了。case 语句的结构:

case  变量  in
value1 )
     process1
     ;;
value2 )
     process2
     ;;
value3)
     process3
     ;;
value4)
     process4
     ;;
*)
      process5;
    ;;
esac

3. 脚本

#!/bin/bash

echo ‘*cmd meau** 1-date 2-ls 3-who 4-pwd‘

read -p "please input a number for your cmd: " n

n2=`echo $n | sed ‘s/[0-9]//g‘`

if [ -n "$n2" ];then
  echo "The input content is not a number."
  exit
fi

case $n in
1)
  date
  ;;
2)
  ls
  ;;
3)
  who
  ;;
4)
  pwd
  ;;
*)
  echo "please input a number 1-4"  
  ;;

esac

分析

首先,按照题目要求输出提示行

然后,用read 读入用户输入的内容

读取内容之后,就要对内容进行判断。如果不是数字则要退出,重新执行。

如果是数字,则需要添加超出1-4范围的判断,提示用户超出了范围

shell练习(11)——运用case进行菜单选择

标签:please   添加   菜单   题目   not   习题   who   ase   ber   

原文地址:http://blog.51cto.com/hellocjq/2329034

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!