我有:
string1="start1.MATCH.ext"
string2="start2.qwer.ext"
string3="start3.MATCH.ext"
...
我想在第一个句号之后取出每个字符串并提取部分,所以
MATCH.ext
qwer.ext
MATCH.ext
然后比较这些子串,以便我可以在if语句中执行某些操作(如果匹配):
if (substr[i] == substr[j]) //now I can do something with string1 and string3
我怎样才能在Bash中执行此操作?感谢
答案 0 :(得分:5)
您可以使用${var#*.}
剪切字符串的正面,并与if [[ ... ]]
进行比较:
string1="start1.MATCH.ext"
string2="start2.qwer.ext"
string3="start3.MATCH.ext"
if [[ ${string1#*.} = ${string3#*.} ]]; then
echo They match
else
echo No match
fi