【发布时间】:2019-11-26 20:30:19
【问题描述】:
我正在尝试使用“sed”将文件中的路径列表替换为另一个路径。
要处理的示例字符串是:
/path/to/file/block
我想将 /path/to/file 替换为其他内容。
我试过了
sed -r '/\s(\S+)\/block/s/\1/new_path/'
我知道它正在查找匹配的字符串,但我收到无效的反向引用错误。
我该怎么做?
【问题讨论】:
-
sed -E 's@\s(\S+)/block@\1/new_path@' <<< " /path/to/file/block"?您也可以使用sed -r '/\s(\S+)\/block/s//\1\/new_path/' <<< "$s",但我建议在这里直接替换。
标签: sed backreference