Shell中的case命令

case语句和判断语句[if...elif...else]功能类似;
当在逻辑判断比较简单的情况下,比后者的代码量要少许多.
case用法,用变量来匹配某值,如果匹配成功则执行它下面的命令,直到 ;;为止

#!/bin/bash #
a=20 #定义变量值
case $a in         #若变量在下面的某值中,则执行它下面的命令
    10)         #值内容 可以加上 | ,可以有多个值
{
    echo "the a is 10"         #执行输出命令
    echo "over"         #执行输出命令
}
;;         #注意这是两个 ;;
20 |30)         #值内容 可以加上 | ,可以有多个值
{
    echo "the a is 20" #执行输出命令
    echo "over" #执行输出命令
}
;;
*)         #默认匹配内容,如以上都不匹配,则执行这条
echo "hello" #执行输出内容
;;
esac         #结束
echo "test case end"         #输出内容

  

时间: 2024-11-19 20:37:14

Shell中的case命令的相关文章

shell中的case语句

shell中case语法如下: case word in pattern1) Statement(s) to be execute if pattern1 matchs ;; pattern2) Statement(s) to be execute if pattern2 matchs ;; pattern3) Statement(s) to be execute if pattern3 matchs ;; *) Default action ;; esac [注]pattern模式不能包含元字

Bash Shell 中的History命令

###  Bash Shell 中的History命令 ---------- 日常运维工作中,我们经常使用History命令去检查在这台机器上所执行的历史命令,或者谁在什么时间执行的什么命令.History命令默认情况下不显示时间,我们可以设置. ---------- - 显示所执行过的命令 简单敲下键盘,输入一个单词:history即可.或者his +table键bash自动补全命令,终端会显示行号及对应的命令. > [[email protected] ~]$ history 1  exit

[Z] shell中的点命令与source命令

1 shell脚本执行方法 有两种方法执行shell scripts,一种是新产生一个shell,然后执行相应的shell scripts:一种是在当前shell下执行,不再启用其他shell. 新产生一个shell然后再执行scripts的方法是在scripts文件开头加入语句:#!/bin/sh.一般的script文件(.sh)即是这种用法.这种方法先启用新的sub-shell(新的子进程),然后在其下执行命令. 另外一种方法就是上面说过的source命令,不再产生新的shell,而在当前s

shell中的eval命令

在shell的学习中,我们会遇到这两种符号:反引号(` `)和$(),那么它们之间有什么区别和联系呢? 我们都知道在bash中,反引号和$()都是用来做命令替换的,命令替换就是用来重组命令行,先完成引号里面的命令,然后将其结果替换出来,再重组成新的命令行.也就是在执行一条命令时,会现将其中的` `,或者是$()中的语句当做命令执行一遍,再将结果加入到原命令中重新执行,例如: 从上面我们可以看到,当我们echo反引号里面的ls命令时,和我们直接执行ls命令是一样的,也就正应里我们前面说的,也就是在

shell中的点命令与source命令的区别

1 shell脚本执行方法 有两种方法执行shell scripts,一种是新产生一个shell,然后执行相应的shell scripts:一种是在当前shell下执行,不再启用其他shell. 新产生一个shell然后再执行scripts的方法是在scripts文件开头加入语句:#!/bin/sh.一般的script文件(.sh)即是这种用法.这种方法先启用新的sub-shell(新的子进程),然后在其下执行命令. 另外一种方法就是上面说过的source命令,不再产生新的shell,而在当前s

在shell中使用sed命令替换/为\/

sed命令相关: https://www.cnblogs.com/ggjucheng/archive/2013/01/13/2856901.html https://www.cnblogs.com/DragonFire/p/6600121.html 这里我们要做的功能是: 输入一个目录"/data/data8" 在shell中将其变换为"\/data\/data8" (这是为了能在shell后边的sed命令中直接使用) 先来看看直接使用命令如何实现: echo &q

Shell脚本的逻辑判断、if文件目录属性判断、if的特殊用法、Shell中的case判断

Shell脚本的逻辑判断 if文件目录属性判断 if的特殊用法 Shenll中的case判断 原文地址:http://blog.51cto.com/13515599/2106533

python如何实现像shell中的case功能

我们知道在shell脚本里是支持case语句,当位置参数为空时,会提示我们怎么使用脚本 那么在python怎么实现呢?也使用case吗? python里不支持case语句,但是也有实现case的方法. 这里我们来讲讲getopt模块 介绍说是解析命令行操作 下面是getopt格式: getopt.getopt(args, shortopts, longopts=[]) args指的是当前脚本接收的参数,它是一个列表,可以通过sys.argv获得 shortopts 是短参数 啥是短参数啊? 类似

SHELL中的case流程控制

case流控制: case结构用于多种情况的条件判断.类似于其他编程语言中的switch/case语句,但从语法形式上讲,有很大的不同. case 字符串 in 模式) 语句 ;; 模式2 | 模式3) 语句 ;; *) 默认执行的 语句 ;; esac 提示:esac就是case反过来写. break和continue break命令允许跳出循环.break通常在进行一些处理后退出循环或case语句.如果是在一 个嵌入循环里,可以指定跳出的循环个数.例如如果在两层循环内,用break 2刚好跳