我有:
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 中执行此操作?
您可以使用
${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