shell:判断某个变量是否包含字符串/变量的方法
发布时间:2020-12-15 23:25:10 所属栏目:安全 来源:网络整理
导读:尝试了有3种方法: 1.使用“=~”符号,注意前后必须要有空格! ** 可以输出正确结果,被匹配的字符串必须要有引号括起来!** [[email?protected] bin]$ a1=‘hello.world‘[[email?protected] bin]$ a2=‘helloworld‘[[email?protected] bin]$ b=‘.‘[[emai
尝试了有3种方法: 1.使用“=~”符号,注意前后必须要有空格!** 可以输出正确结果,被匹配的字符串必须要有引号括起来!** [[email?protected] bin]$ a1=‘hello.world‘ [[email?protected] bin]$ a2=‘helloworld‘ [[email?protected] bin]$ b=‘.‘ [[email?protected] bin]$ if [[ ${a1} =~ ‘.‘ ]];then echo "yes";else echo "no";fi yes [[email?protected] bin]$ if [[ ${a2} =~ ‘.‘ ]];then echo "yes";else echo "no";fi no [[email?protected] bin]$ if [[ ${a1} =~ "." ]];then echo "yes";else echo "no";fi yes [[email?protected] bin]$ if [[ ${a2} =~ "." ]];then echo "yes";else echo "no";fi no [[email?protected] bin]$ if [[ ${a1} =~ "${b}" ]];then echo "yes";else echo "no";fi yes [[email?protected] bin]$ if [[ ${a2} =~ "${b}" ]];then echo "yes";else echo "no";fi no ** 不能输出正确结果 ** [[email?protected] bin]$ a1=‘hello.world‘ [[email?protected] bin]$ a2=‘helloworld‘ [[email?protected] bin]$ b=‘.‘ [[email?protected] bin]$ if [[ ${a1} =~ . ]];then echo "yes";else echo "no";fi yes [[email?protected] bin]$ if [[ ${a2} =~ . ]];then echo "yes";else echo "no";fi yes [[email?protected] bin]$ if [[ ${a1} =~ ${b} ]];then echo "yes";else echo "no";fi yes [[email?protected] bin]$ if [[ ${a2} =~ ${b} ]];then echo "yes";else echo "no";fi yes [[email?protected] bin]$ if [[ ${a1} =~ ‘${b}‘ ]];then echo "yes";else echo "no";fi no [[email?protected] bin]$ if [[ ${a2} =~ ‘${b}‘ ]];then echo "yes";else echo "no";fi no 2.使用”==“加通配符wildcard,注意等号前后必须有空格,注意,通配符跟正则表达式有所区别,*表示匹配 0 或多个字符
|