正斜杠的sed命令帮助

正斜杠的sed命令帮助,sed,Sed,我有一个像这样的html行 <name> abc </name> <name> test </name> 但它在第一个反斜杠上抛出一个错误意外字符:'\'。正确的方法是什么?如果将“/”替换为“#”,则无需转义“/”。按如下所示修改命令: sed 's#<name>.*</name>#<name>file:XYZ</name>#g' filename sed的#。*文件名:XYZ#g 我

我有一个像这样的html行

  <name> abc </name>
  <name> test </name>
但它在第一个反斜杠上抛出一个错误
意外字符:'\'
。正确的方法是什么?

如果将“/”替换为“#”,则无需转义“/”。按如下所示修改命令:

sed 's#<name>.*</name>#<name>file:XYZ</name>#g' filename
sed的#。*文件名:XYZ#g
我建议你试试下面的命令

sed 's#\(<name>\).*\(</name>\)#\1file:XYZ\2#g' filename
sed的#\(\).\(\)\1文件名:XYZ\2#g'filename
\1
\2
参考相应的匹配
\(\)
\(\)
。在添加
-i
之前,确保输出是您想要的

sed 's#\(<name>\).*\(</name>\)#\1file:XYZ\2#g' filename