linux shell case语法(case语句)

奋斗吧
奋斗吧
擅长邻域:未填写

标签: linux shell case语法(case语句)

2023-04-13 18:23:24 202浏览

在这个例子中,我们首先提示用户输入一个数字,然后使用 case 语句来测试这个数字与模式的匹配情况。如果用户输入的数字是 1,那么就会执行第一个命令;如果是其他数字,就会执行默认命令。在 Linux Shell 中,case 语句用于测试一个变量与多个模式(pattern)之间的匹配情况。其中,变量是要测试的变量,模式是要匹配的模式,命令是与模式匹配时要执行的命令。需要注意的是,case 语句中的模式可以使用通配符来匹配多个值。)来匹配单个字符,使用星号(表示匹配任意一个单个字符,表示匹配任意一个数字,

文章目录

case语法

在 Linux Shell 中,case 语句用于测试一个变量与多个模式(pattern)之间的匹配情况。它类似于 switch 语句,但是比 switch 语句更加灵活。

case 语法如下:

case 变量 in
模式1)
    命令1
    ;;
模式2)
    命令2
    ;;
*)
    默认命令
    ;;
esac

其中,变量是要测试的变量,模式是要匹配的模式,命令是与模式匹配时要执行的命令。每个模式后面必须有两个分号(;;)来表示命令结束。最后一个模式可以使用星号(*)来表示默认情况。

下面是一个例子:

#!/bin/bash

echo "请输入一个数字:"
read num

case $num in
    1)
        echo "你输入了1"
        ;;
    2)
        echo "你输入了2"
        ;;
    3)
        echo "你输入了3"
        ;;
    *)
        echo "你输入了其他数字"
        ;;
esac

在这个例子中,我们首先提示用户输入一个数字,然后使用 case 语句来测试这个数字与模式的匹配情况。如果用户输入的数字是 1,那么就会执行第一个命令;如果是 2,就会执行第二个命令;如果是 3,就会执行第三个命令;如果是其他数字,就会执行默认命令。

需要注意的是,case 语句中的模式可以使用通配符来匹配多个值。例如,使用问号(?)来匹配单个字符,使用星号(*)来匹配任意数量的字符。下面是一个例子:

#!/bin/bash
echo"请输入一个字符串:"
read str
case $str in
[a-z])
	echo"你输入了一个小写字母"
	;;
[A-Z])
	echo"你输入了一个大写字母"
	;;
[0-9])
	echo"你输入了一个数字"
	;;
?)
	echo"你输入了一个单个字符"
	;;
*)
	echo"你输入了一个字符串"
	;;
esac

在这个例子中,我们使用了方括号([])来定义模式,其中[a-z]表示匹配任意一个小写字母,[A-Z]表示匹配任意一个大写字母,[0-9]表示匹配任意一个数字,?表示匹配任意一个单个字符,*表示匹配任意数量的字符。

好博客就要一起分享哦!分享海报

此处可发布评论

评论(0展开评论

暂无评论,快来写一下吧

展开评论

您可能感兴趣的博客

客服QQ 1913284695