【发布时间】:2013-06-28 12:40:11
【问题描述】:
我正在使用 sed 过滤文件列表。我有一个排序的文件夹列表,我想在特定行之后获取所有行。为了完成这项任务,我使用了here 描述的解决方案,它适用于我尝试过的任何输入,但是当匹配在第一行时它不起作用。在这种情况下,sed 将删除输入的所有行
这是一个例子:
$ ls -1 /
bin
boot
...
sys
tmp
usr
var
vmlinuz
$ ls -1 / | sed '1,/tmp/d'
usr
var
vmlinuz
$ ls -1 / | sed '1,/^bin$/d'
# sed will delete all lines from the input stream
当第一行与正则表达式匹配时,我应该如何更改命令以考虑限制情况?
顺便说一句 sed '1,1d' 正常工作,只删除第一行。
【问题讨论】:
-
感谢您的评论。更正并添加了一些其他解决方案。
标签: sed