正则表达式 – 在与sed匹配之前删除所有行

前端之家收集整理的这篇文章主要介绍了正则表达式 – 在与sed匹配之前删除所有行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用sed来过滤文件列表.我有一个排序的文件夹列表,我想得到所有的行后一个特定的.为了做这个任务,我使用了描述 here解决方案,它与我尝试过的任何输入工作相当不错,但是当匹配在第一行时它不起作用.在这种情况下,sed将会删除输入的所有行

这是一个例子:

(ssh) fabio@s2 : ~
[0] % ls -1 /
bin
boot
...
sys
tmp
usr
var
vmlinuz

(ssh) fabio@s2 : ~
[0] % ls -1 / | sed '1,/tmp/d'
usr
var
vmlinuz

(ssh) fabio@s2 : ~
[0] % ls -1 / | sed '1,/^bin$/d'
# sed will delete all lines from the input stream

如何更改命令以考虑第一行与regexp匹配的极限情况?

BTW sed’1,1d’正确地工作并删除第一行.

尝试这个(仅限GNU sed):
sed '0,/^bin$/d'

..输出是:

$sed '0,/^bin$/d' file
boot
...
sys
tmp
usr
var
vmlinuz

猜你在找的正则表达式相关文章