zoukankan      html  css  js  c++  java
  • case用法

    case的语法格式如下:
    case var in
    exp-1) 命令体1 ;;
    exp-2) 命令体2 ;;
    ...
    *) 命令体 ;;
    shell通过计算变量var的值,将其结果依次和运算式exp-1, exp-2等进行比较,直到找到一个匹配的运算式为止。如果找到了匹配项,则执行它下面的命令直到遇到一对分号(;;)为止。


    平时较小用case语句,偶尔用到,所以记录如下:
    1> var可以是数字,也可以是字符串,只是在下面的判断运算式exp里区分就行
    2> 判断运算式exp可以只是一个数字,或一字符串,也可以是一个运算式如$((a+b)) 其中a,b在上面已赋值,也可以是一个正则表达式
    3> *即为当上面的判断运算式都匹配失败时才会执行它的命令体, 该项为可选
    4> 一对分号可以跟在命令体最后一语句后,也可以写在命令体结束后的下一空行.作用相同

    正则表达式格式
    case $BOOLEAN in
      [yY][eE][sS])
      echo 'Thanks' $BOOLEAN
      ;;
      [yY]|[nN])
      echo 'Thanks' $BOOLEAN
      ;;
      'T'|'F')
      echo 'Thanks' $BOOLEAN
      ;;
      [Tt]ure|[Ff]alse)
      echo 'Thanks' $BOOLEAN
      ;;
      *)
      exit 1
      ;;
    esac

    ====================================

    #!/bin/bash
    read -p "press some key ,then press return :" KEY
    case $KEY in
    [a-z]|[A-Z])
    echo "It's a letter."
    ;;
    [0-9])
    echo "It's a digit."
    ;;
    *)
    echo "It's function keys、Spacebar or other ksys."
    esac

  • 相关阅读:
    如何手动同步 Chrome 浏览器的数据
    如何释放 Windows 10 系统的 C 盘空间
    Foxmail
    常用 Git 命令
    常用的 .gitignore 模板
    MySQL InnoDB Engine--数据页存储和INSERT操作
    MySQL InnoDB Engine--数据页存储和ALTER TABLE操作
    MySQL InnoDB Engine--数据页存储
    MySQL Index--BAK和MRR演示
    MySQL Execute Plan--Index Merge特性
  • 原文地址:https://www.cnblogs.com/jinxf/p/9358771.html
Copyright © 2011-2022 走看看