@stcmd04236

Как получить первые и последние строки который совпадает с заданным словом в bash?

Есть лог файлов. Как получить строку первого и последнего вхождения для заданного слова?
  • Вопрос задан
  • 1492 просмотра
Решения вопроса 1
plin2s
@plin2s
IT, инженер
На вскидку
$ cat 1.txt
1 line
2 line
3 bar
4 line
5 line
6 line
7 foo
8 line
9 line
$ grep line 1.txt | sed -n '1p;$p' -
1 line
9 line

Правда если вхождение от grep только одно, то одна строка выведется два раза.
А вообще учитесь гуглить.
grep line 1.txt | sed '1!{$!d}'
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@fdrwitch
если вручную, и sed лень смотреть, то можно просто:
grep line -n ttt.txt | head -1
grep line -n ttt.txt | tail -1
грепу даётся нумерованный шаблон , а головой и хвостом берёте соответ-но первое и послед вхождение
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы