2

我有:

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 中做到这一点?谢谢

4

1 回答 1

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
于 2013-02-20T18:41:54.923 回答