sed -i -e 's_.*_text-to-be-insterted-on-each-line&_' '/media/root/<filename>'
运作良好,简洁干净,就像我喜欢.....但我不能/无法找到关于所使用的忍者命令的任何信息 - 不是手动或谷歌。
但我很难从例子中了解_.*_
是如何翻译的
以及如何使用&amp; _正在使用&_
如果有人可以解释GREAT或任何记录这些独特的sed命令的资源吗?
答案 0 :(得分:2)
s_.*_foo&_
与:
相同s/.*/foo&/
您也可以使用其他分隔符,例如:
s#.*#foo&# or s@patter@replacement@
有时候在/
替换中使用s
以外的分隔符很方便。例如,您希望对文件路径进行一些更改。
替换部分中的&
表示匹配的组0具有给定的模式(正则表达式)。
一个例子可以更好地解释:
kent$ sed 's/aa/*&*/'<<<'aabbcc'
*aa*bbcc
您已在上面的输入字符串中看到匹配的组0为aa
。