我想替换字符串“[[title]]”
中的所有“[[title]]”我的代码是:
root@lll:/mnt/f/work/files# a="[[title]]"
root@lll:/mnt/f/work/files# title="1111"
root@lll:/mnt/f/work/files# echo ${a/[[title]]/$title}
输出是:
[[titl1111]
我想要的是:
1111
怎么做,为什么我得错了答案?
答案 0 :(得分:1)
你必须逃避[
,因为它是一个元字符
$ a='[[title]]'
$ title='1111'
$ echo "${a/\[\[title]]/$title}"
1111
另请参阅Pattern Matching
man bash
部分
答案 1 :(得分:0)
开场方括号是一个特殊字符,所以你必须逃避它:
echo "${a/\[\[title]]/$title}"