如何在Bash中从字符串中删除前缀?
例如:
STRING1="My name is James"
echo "${STRING1}"
# My name is James
NAME="${STRING1#???}"
echo "${NAME}"
# James
答案 0 :(得分:0)
为此,您必须转义前缀字符串中的特殊符号。
NAME="${STRING1#My\ name\ is\ }"
echo "${NAME}"
# James
同样的事情就足够了。
答案 1 :(得分:0)
替代:FOO=${FOO//$WORDTOREMOVE/}
$ STRING1="My name is James"
$ NAME="${STRING1//My name is /}"
$ echo "${NAME}"
James
根据@ gniourf_gniourf的建议更新:FOO=${FOO/#$WORDTOREMOVE/}
$ NAME="${STRING1/#My name is /}"
$ echo "${NAME}"
James