不区分大小写如何比较shell脚本中的字符串

 我来答
良玉小帝
2018-07-26 · 个人日常精心汇总合集
良玉小帝
采纳数:5925 获赞数:9451

向TA提问 私信TA
展开全部
方法一:
你可以将两个字符串统统转成大写(或小写), 再比较

#!/bin/bash

xxx= "Temp "
yyy= "temp "

x_tmp=$(echo $xxx | tr [a-z] [A-Z])
y_tmp=$(echo $yyy | tr [a-z] [A-Z])

if [ "$x_tmp " = "$y_tmp " ];then
echo "PASS "
else
echo "FAIL "
fi

优点:通用

方法二:
用expr的话,得这样:

xxx=Temp
if [ `expr match $xxx "[T|t][E|e][M|m][P|p]$ "` -ne 0 ]
then
echo "PASS "
else
echo "FAIL "
fi

优点:高效,但是限制为特定字符序列
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式