15bash编程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了15bash编程相关的知识,希望对你有一定的参考价值。
1、bash脚本编程: 选择执行:if单分支、if双分支、if多分支;case语句
2、case语句:
语法格式:
case $VARIABLE in //$VARIABLE是变量引用,in是关键字
PAT1) //模式1
分支1
;; //以双分号结束分支1语句
PAT2)
分支2
;;
...
*) //所有都不匹配,为*,类似else
分支n
;;
esca
注意:①、每个case中的模式语句必须以双分号结尾,这里的双分号可以单独成行,也可以放在每个分支的最后一条语句后面,PAT仅支持golb风格的通配符(*、?、[ ] 、[^ ])
②、case语句仅适用于一个变量与多个值分别做模式匹配时适用。
3、示例:显示一个如下菜单给用户
cpu) display cpu information
mem)display mem information
disk)display disk information
*) quit
要求:提示用户给出自己的选择
正确的选择则给出相应的信息,否则,则提示重新选择正确的选项。
if语句实现: [[email protected] sh]# cat men.sh #!/bin/bash cat << EOF cpu) display cpu information mem)display mem information disk)display disk information *) quit EOF read -p "enter your choice:" choice while [ "$choice" != "cpu" -a "$choice" != "mem" -a "$choice" != "disk" -a "$choice" != "*" ];do echo "please make sure your choice" read -p "enter your choice again:" choice done if [ "$choice" == "cpu" ];then lscpu elif [ "$choice" == "mem" ];then free elif [ "$choice" == "disk" ];then fdisk -l /dev/[hs]d[a-z] else echo "quit" exit 4 fi [[email protected] sh]# | case语句实现: [[email protected] sh]# cat case.sh #!/bin/bash cat << EOF cpu) display cpu information mem)display mem information disk)display disk information *) quit EOF read -p "enter your choice:" choice while [ "$choice" != "cpu" -a "$choice" != "mem" -a "$choice" != "disk" -a "$choice" != "*" ];do echo "please make sure your choice" read -p "enter your choice again:" choice done case $choice in cpu) lscpu;; mem) free ;; disk) fdisk -l /dev/[hs]d[a-z] ;; *) echo "quit" exit 4 esac [[email protected] sh]# |
以上是关于15bash编程的主要内容,如果未能解决你的问题,请参考以下文章
linux shell编程bash编程shell教程bash教程shell文档bash文档shell脚本bash脚本教程第一部分:绪论