",$ d"的含义在sed命令的替换部分

时间:2016-09-20 17:32:47

标签: sed

我在我正在进行的项目中遇到了这个命令:

sed -i '/regex/,$d' file

我不明白,$d部分是如何运作的。如果我省略,$d的任何部分,我会收到错误。在我的测试中,它似乎取代了匹配的行和其后的任何东西。例如:

包含内容的文件:

first line 
second line regex
third line
fourth line

在运行该命令后出现:

first line

我无法在手册页中找到解释此问题的任何文档,但我可能很容易错过它。手册页很难解析...

此示例已使用GNU Sed v 4.2.2进行了测试。

1 个答案:

答案 0 :(得分:1)

地址范围指定从第一个正则表达式匹配到文件末尾的行(此上下文中的$指定最后一行),并且操作d删除指定的行。

这不是“模糊不清”。您可以在手册页或sed的任何基本介绍中找到它。