Shell语法—— case 条件语句

case 条件语句语法

case 条件语句语法格式为:

case  " 变量 " in
                    值 1)
                                    指令 1
                    ;;
                    值 2)
                                    指令 2
                    ;;
                    \* )
                                    指令 3
                    ;;
esac
了解即可

给字体加颜色的命令:
例:echo -e "\E[1;31m 红颜色 hello world \E[0m"

  1. \E 等同于 \033
  2. "[1" 数字 1 表示加粗显示
  3. 31m 表示红色字体
  4. "[0m" 表示关闭所有属性
  5. "[1m" 表示设置高亮度
  6. "[4m" 表示下划线
  7. "[5m" 表示闪烁
  8. "[7m" 表示反显
  9. "[8m" 表示消隐
  10. \33[30m -- \33[37m 表示设置前景色
  11. \33[40m -- \33[47m 表示设置背景色
    案例一:
    编写 Nginx 启动 停止服务。
    此处仅为做逻辑与 case 语法练习所用,脚本本身并没有什么用途
#!/bin/bash
RETVAL=0
pid=/var/run/nginx.pid
. /etc/init.d/functions
start(){
if [ ! -f $pid ];then
        service nginx start
        RETVAL=$?
        if [ $RETVAL -eq 0 ];then
                action "nginx is started" /bin/true
                return $RETVAL
        else
                action "nginx is started" /bin/false
                return $RETVAL
        fi
else
        echo "nginx is running"
        return 0
fi
}

stop(){
if [ -f $pid ];then
        service nginx stop
        RETVAL=$?
        if [ $RETVAL -eq 0 ];then
                action "nginx is started" /bin/true
                return $RETVAL
        else
                action "nginx is started" /bin/false
                return $RETVAL
        fi
else
        echo "nginx is stop"
        return 0
fi
}

restart(){
        stop
        start
}

case $1 in
  start|yes)
        start
        RETVAL=$?
        ;;
  stop|no)
        stop
        RETVAL=$?
        ;;
  restart|or)
        restart
        RETVAL=$?
        ;;
  \*)
        echo "Usage:$0{start(yse)|stop(on)|restart(or)}"
        exit 1
esac
exit $RETVAL

原文地址:http://blog.51cto.com/12384628/2294211

时间: 2024-11-05 21:48:42

Shell语法—— case 条件语句的相关文章

Shell语法—— while 条件语句

while 循环语句 while 循环语句语法格式为: while < 条件表达式 > do 指令 done 有关脚本运行的相关用法 命令 说明 sh file.sh & 把 file.sh 脚本放到后台运行(后台运行脚本的常用方法) ctl+c 停止执行当前脚本或任务 ctl+z 暂停执行当前脚本或任务 bg 把当前脚本或任务放到后台执行 fg 把当前脚本或任务放到前台执行.如果是多个脚本,需加编号,如: fg 2 jobs 查看当前执行的脚本或任务 kill 关闭执行的脚本任务 有

Shell语法—— if 条件语句

if 条件语句语法 1.单分支结构 if < 条件表达式 >; then 指令 fi 2.双分支结构 if < 条件表达式 >; then 指令 1 else 指令 2 fi 3.多分支结构 if < 条件表达式 1 >; then 指令 1 else if < 条件表达式 2 >;then 指令 2 elif < 条件表达式 3 >;then 指令 3 else 指令 4 fi if 条件语句多种条件表达式语法 1.test 条件表达式 if

case条件语句的应用实践

case条件语句相当于多分支的if/elif/else的条件语句,但是它比这些条件语句看起来更规范更工整,常被应用于实现系统服务启动脚本等企业应用场景中. 当case执行一个相匹配的表达式之后会跳出case的语句. 如果没有匹配变量任何值,则执行*)后面的指令,直到遇到双分号(;;) case条件语句的语法格式为: case "变量" in 值1) 指令... ;; 值2) 指令... ;; *) 指令3... esac 例如: #!/bin/bash read -p "pl

Java 语法 索引 ----- 条件语句(If Else,Switch)

if (x < 1) System.out.print(x + " < 1"); else if (x > 1) System.out.print(x + " > 1"); else System.out.print(x + " == 1"); Switch switch (y) { case 0: System.out.print(y + " is 0"); break; case 1: System

Shell中if条件语句的知识和实践

本文主要讲解if条件语句在shell的使用场景和示例 基本大纲: 1.if条件语句的语法 2.if条件语句多种条件表达式语法 3.单分支if条件语句实践 4.if条件语句的深入实践及场景使用 一:if条件语句的语法 1)单分支结构 第一种语法: if    <条件表达式> then 指令 fi 第二中语法: if    <条件表达式>:then 指令 fi 上面的"<条件表达式>"部分可以是test.[].[[]].(())等条件表达式,也可以直接使

Linux Shell脚本编程case条件语句

1,判断一个数字是否则在1,2,3之中. #!/bin/bash read -p "pls input a number:" n case "$n" in 1) echo "变量是1" ;; 2) echo "变量是2" ;; 3) echo "变量是3" ;; *) echo "pls input a number between 1 and 3" exit; esac 2,多级if语

Linux Shell编程(1): 条件语句

1.if—then#!/bin/bashif date              如果命令运行成功(退出码为0),则then部分的命令被执行then   echo "good"fi 2.if—then—else#!/bin/bashif hunterthen   echo "good"else    echo "bad"        if语句中退出码非0,则执行else部分语句fi 3.elif#!/bin/bashif hunterthen 

shell 脚本 if 条件语句

使用test测试命令时,多数使用 " [ 条件表达式 ] ",条件表达式与方括号之间至少需要有一个空格. 1.文件测试: -d:测试是否为目录:-f:测试是否为文件:-e:测试是否文件或目录存在:-r:测试当前用户是否有权限读取:-w:测试当前用户是否有权限写入:-x:测试是否设置有可执行权限:2.整数值比较: -eq:第一个数等于第二个数:-ne:第一个数不等于第二个数:-ge:第一个数大于或等于第二个数:-le:第一个数小于或等于第二个数:-lt:第一个数小于第二个数:-gt:第一

Shell编程之条件语句

条件测试 文件测试整数测试字符串与逻辑测试 if语句 if单分支语句if双分支语句if多分支语句if嵌套语句 test命令 测试特定的表达式是否成立,当条件成立时,测试语句的返回值为0,否则为其他数值 格式1: test 条件表达式 格式2:[ 条件表达式 ] //括号内空格 文件测试 [ 操作符 文件或目录 ] //括号内空格 常用的测试操作符-d:测试是否为目录(Directory)-e:测试目录或文件是否存在(Exist)-f:测试是否为文件(File)-r:测试当前用户是否有权限读取(R