Я использую sed для фильтрации списка файлов. У меня есть отсортированный список папок, и я хочу получить все строки после определенного. Для выполнения этой задачи я использую описанное решение здесь, которое хорошо работает с любым вводом, который я пытался, но не работает, когда совпадение находится в первой строке. В этом случае sed удалит все строки ввода
Вот пример:
(ssh) [email protected] : ~
[0] % ls -1 /
bin
boot
...
sys
tmp
usr
var
vmlinuz
(ssh) [email protected] : ~
[0] % ls -1 / | sed '1,/tmp/d'
usr
var
vmlinuz
(ssh) [email protected] : ~
[0] % ls -1 / | sed '1,/^bin$/d'
# sed will delete all lines from the input stream
Как мне изменить команду, чтобы рассмотреть также предел, когда первая строка соответствует регулярному выражению?
BTW sed '1,1d'
корректно работает и удаляет только первую строку.