我有变量from="abc"
和to="xyz"
定义小写字符串。
我如何使用sed
它来替换from
,to
但匹配大小写。
那是echo "abc def ABC DEF" | <sedcommand>
应该生产xyz def XYZ DEF
。
答案1
以下是 sed 和 bash 参数扩展的组合:
$ from="abc" to="xyz"
$ echo "abc def ABC DEF" | sed "s/$from/$to/g; s/$from/${to^^}/Ig"
xyz def XYZ DEF
第一个s///
替换所有小写字母,第二个替换所有混合大小写字母,并将其替换为大写字母 - 将替换Abc
为XYZ