使用sed命令替换特殊字符“ /”

时间:2018-12-11 06:29:39

标签: sed

我想使用sed命令将特殊字符“ /”替换为特殊字符“ *”。 例子-

I / YOU.
I * YOU.

1 个答案:

答案 0 :(得分:0)

如评论Escaping forward slashes in sed command

中所述

您可以使用代替

sed "s/target/replacement/" file 

要么

sed "s|target|replacement|" file

sed "s@target@replacement@" file

命令:

$ echo "I / YOU." | sed 's@/@*@'
I * YOU.

查看sed接受的语法时,通常来说:

sed

[2addr] s / BRE /替换/标志

  

将替换字符串替换为BRE实例中的   模式空间。 反斜杠或换行符以外的任何其他字符都可以   用于代替BRE和替代品。中   BRE及其替代,BRE分隔符本身可以用作   文字字符(如果前面带有反斜杠)。

您还可以采用另一种方法,其中您不更改分隔符,但使用要替换的字符的十六进制值,这也可以避免歧义。 (http://www.asciitable.com/

$ echo "I / YOU." | sed 's/\x2F/*/'
I * YOU.