Извлечь часть файла журнала - PullRequest
0 голосов
/ 15 марта 2019

У меня есть файл журнала, который выглядит так

2019-03-15 04:30:41-0400 id:xxxx-84f1-xxxx-85xx-c4xxxx ip:127.0.0.1 apikey:-- rt:47.3ms 200 GET /end/point
-- Request --
some content
....
-- Response --
....
2019-03-15 04:31:00-0500 uid:diffrent-id ip:10.10.10.10. netip:10.10.10.10 apikey:-- rt:309ms 200 GET /some/other/end/point

У меня есть id, который находится рядом со временем возникновения. Я хочу извлечь все, что связано с этим id до следующего случая и сохранить его в файл.

1 Ответ

2 голосов
/ 15 марта 2019

Чтобы получить все между двумя шаблонами, вы можете использовать команду sed:

sed -n '/.* id:.*/,/.* uid:.*/p' log.txt

И вы получите

-- Request --
some content
....
-- Response --
....

, где

-n подавляет автоматическую печать пространства шаблона

p печатает текущее пространство шаблона

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...