bash脚本编程之case语句及脚本选项进阶

case语句及脚本选项进阶详解

    面向过程程序设计语言中的控制流(即程序当中的语句)默认是顺序执行的。

程序设计语言的控制结构一共有三类:

1,顺序结构

2,选择结构

(1)if语句

->单分支的if语句

格式:if condition1;then

expression

...

fi

->双分支的if语句

格式:if condition1;then

expression

...

else

expression

...

fi

->多分支的if语句

格式:if condition1;then

expression

...

elif condition2;then

expression

...

else

expression

...

fi

多分支的if语句,执行效率比较低,因为它是一个条件接着一个条件比较的。

(2)case语句

我们选择结构还有第二个语句,也就是我们的case语句,比多分支的if语句,结构更明晰,使用更简单,执行效率更高的选择结构语句。

用法格式:case(关键字) SWITCH(变量,这里引用的是变量的值,而不是变量本身) in

而我们变量的值会有以下几种情况

value 1)->这不是条件,而是变量的值,变量的第一种值

expression

...;;(没一个选项都得以双分号结尾)

value 2)->第二种值

expression

...;;

...

*)

expression

...

esac

value的值可以有多个

练习:写一个脚本,要求

让用户从键盘键入内容,然后用我们的脚本来判断用户键入了什么内容并显示出来

键入了数字就显示数字,键入了小写字母就显示小写字母,键入了大写字母就显示大写字母

脚本内容:

脚本执行结果:

练习:写一个脚本,要求

该脚本只接收这四个参数其中之一,start,stop,restart,status

然后显示相对应的内容

脚本内容:

脚本执行结果:

练习:写一个脚本,要求

可以接收选项及参数,而后能获取每一个选项及参数,并能根据选项及参数做出特定的操作

比如->boke3.sh --add tom,jerry --del tom,blair -v|--verbose -h|--help

脚本内容:

脚本执行结果:

练习:写一个脚本,要求

脚本名为boke4.sh

脚本的用法格式为showlogged.sh -v -c -h|--help

其中-h选项只能单独使用,用于显示帮助信息;

-c选项时,显示当前系统上登录的所有用户数,如果同时使用了-v选项,则既显示同时登录的用户数,又显示登录的用户的相关信息。

脚本内容:

脚本执行结果:

3,循环结构

for语句

时间: 2024-12-26 15:09:00

bash脚本编程之case语句及脚本选项进阶的相关文章

bash脚本编程之case语句

case语句用于简化复杂的if语句 #!/bin/bash while true; do   read -p "Enter your score:" score   if [ "$score" == "quit" ]; then           exit 0   elif [ $score -lt 60 ]; then           echo "stupid"           break   elif [[ $s

shell编程之case语句

bash脚本编程: case语句: 多分支if语句: if CONDITION1; then 分支1 elif  CONDITION2; then 分支2 ... else CONDITION; then 分支n fi 示例1:显示一个菜单给用户: cpu) display cpu information mem) display memory information disk) display disks information quit) quit 要求:(1) 提示用户给出自己的选择: (

bash编程之case语句

一.语法格式 case 变量引用(${}) in value1)    #变量的值是value1,则执语句1,语句2,······ 语句1 语句2 ······ ;;    #每个分支结束时都需要以双分号结尾 value2)    #变量的值是value2,则执语句3,语句4,······ 语句3 语句4 ······ ;; value3)    #变量的值是value3,则执语句5,语句6,······ 语句5 语句6 ······ ;; *)    #其他任意情况,则执行语句7,语句8,··

编程之case语句

一.使用$random变量随机取10个随机数,进行最大值和最小值对比 #!/bin/bash # declare -i MAX=0 for I in {1..10};do    MYRANDOM=$RANDOM    [ $I -eq 1 ] && MIN=$MYRANDOM;    if [ $I -le 9 ];then         echo -n "$MYRANDOM,"    else         echo  "$MYRANDOM"

Shell编程之case语句与循环语句

case语句分支 1.case语句的结构 case 变量值 in模式 1)命令序列 1;;模式 2)命令序列 2;;......*)默认命令序列esac case分支语句的结构图使用case分支语句的注意点:1.case行尾必须为单词"in",每一个模式必须以右括号")"结束.2.双分号";;"表示命令序列的结束.3.模式字符串中,可以用方括号表示一个连续的范围,如"[0-9]";还可以用竖杠符号"|"表示

第八课-第二讲 08_02_bash脚本编程之七 case语句及脚本选项进阶

一. 面向过程控制结构顺序结构选择结构循环结构选择结构if语句 单分支,双分支,多分支case 语句 case语句:选择结构 case SWITCH invalue1)---此处的value是当做字符来比较的statement.....;;value2)statement.....;;value3)statement.....;;*)statement.....;;esac 原文地址:http://blog.51cto.com/13788421/2147914

case语句及脚本选项进阶

面向过程 控制结构 顺序结构 选择结构 循环结构 选择结构: if:单分支.双分支.多分支 cese语句:选择结构 case SWITCH in value1) statemnet ... ;; value2) statement ... ;; *) statement ... ;; esac [0-9] [a-z] [A-Z] [abc] #!/bin/bash # case $1 in [0-9]) echo "a digit";; [a-z]) echo "Lower&

shell编程之case分支语句

shell编程之case分支语句 case分支语句和if的多分支语句很相似. if多分支语句一般用在有(区间范围)的地方 :例如:0-100之间. if需要判断多个不同的条件. case的分支语句用在 如果里面匹配到固定值:或某个变量存在多中取值,需要对其中的每一个取值分别执行不同的命令序列. case只是判断一个变量的不同取值. case的模式: 执行流程: 首先使用"变量值"与模式1进行比较,如果取值相同就执行模式1的命令序列1,直到遇见" ;; "后跳转到es

SHELL编程之case与函数

一.case语句概述 使用case语句改写if多分支可以使脚本结构更加清晰.层次分明 针对变量不同取值,执行不同的命令序列 case语句结构如下: case 变量值  in 模式1) 命令序列1 ;; 模式2) 命令序列2 ;; *) 默认命令序列 esac 1 #!/bin/bash 2 read -p "请输入一个字符: " key 3 case "$key" in 4 [a-z]|[A-Z]) #假如变量$key在26个大小写英文字母中 5 echo &quo