首页 > 系统相关 >shell中字符串比较和模糊比较说明

shell中字符串比较和模糊比较说明

时间:2023-01-10 02:22:21浏览次数:41  
标签:shell 双引号 模糊 echo 字符串 比较

shell字符串比较说明

1 完全比较方法(完全匹配)

if [ "$soure" == "$dest" ]; then

    echo "is =="

else

    echo "is !="

fi

if语句中的==判断字符串是否相等:

    1、使用完全匹配方式;

    2、两边的双引号都是可有可无的,但当字符串为空的时候就会报错,提示unary operator expected,因此,需要加入双引号;

    3、也可以使用=号,但==更合适一些,防止误解,避免误认为是在进行赋值操作。

2 模糊比较方法(正则表达式)

if [[ "$soure" == dest* ]]; then

    echo "is =="

else

    echo "is !="

fi

当if语句中的单中括号[]变成双中括号[[]]时,支持模糊匹配,此时:

    1、模糊匹配规则不能添加双引号,否则无效,会被当做普通字符串进行比较。

    2、被比较的字符串,可以加双引号,也可以不加,当字符串为空也不会报错,但是为了统一规范,防止遗漏,因此,推荐还是加入双引号。

标签:shell,双引号,模糊,echo,字符串,比较
From: https://www.cnblogs.com/exmyth/p/17038994.html

相关文章