1
У меня есть следующая строкаСтрока подстановки не работает, если шаблон содержит «[»
str="aaa.bbb.1.ccc.[mmm]."
Если я замену с помощью следующей команды, то она работает
# echo ${str/ccc.\[mmm\]./}
aaa.bbb.1.
Теперь я хочу поставить шаблон в переменную, то команда замещения не будет работать
# var="ccc.\[mmm\]."
# echo ${str/$var/}
aaa.bbb.1.ccc.[mmm].
# var="ccc.[mmm]."
# echo ${str/$var/}
aaa.bbb.1.ccc.[mmm].
Как я могу сделать замену w с шаблоном, определенным в переменной?
Не уверен, следовательно комментарий, но, возможно, вам нужно бежать дважды? – npinti
'var =" ccc. \ [Mmm \]. "' Работает для меня в BASH – anubhava
, если вы имеете в виду 'var =" ccc. \\ [mmm \\]. "', Это также не сработало – MOHAMED