如何替换shell中的句子?

时间:2014-06-20 21:30:48

标签: regex shell replace sed

我试图在Shell中找到替换文本文件中的句子的方法,

例如,我想将"客户名称1" 替换为"客户名称,jack _ 1" 。 我故意将特殊字符包括在内。

我理解sed -i 's/original/new/g' file

我正在寻找能够取代可能包含特殊字符的更复杂句子的东西。

2 个答案:

答案 0 :(得分:2)

你的例子在sed中运行得很好......

$ sed 's/Customer Name 1/customer name, jack _ 1/g'
cust
cust
Customer Name 1
customer name, jack _ 1

(输入奇数行,输出偶数行。)

通常,如果某些符号被误解,您可以尝试通过在它们之前添加反斜杠(\)来转义它们。

答案 1 :(得分:0)

perl -i.bak -pe 's/Customer Name 1/customer name, jack _1/g;' [file(s)]

将在文件或文件的原位编辑中执行相同的操作