Как найти N строк, содержащих определенную строку, заданную смещением в обратном порядке? С python в Unix.
Задан файл:
a
babc1
c
abc1
abc2
d
e
f
Задано смещение: 20 (это "d"), строка: "abc", N: 2, вывод долженbe:
strings:
# the babc1 will not count since we only need 2
abc1
abc2
offset: (we need to return the offset where the search ends)
10 ((the "a" in "abc1")
Приведенный выше пример - просто демонстрация, реальный файл - журнал 33 ГБ, поэтому мне нужно принимать смещение в качестве ввода и вывода.
Я думаю, что ядропроблема заключается в следующем: как обратно прочитать строки из файла с заданным смещением? Смещение около хвоста.
Я пытался сделать это с помощью bash, это была агония. Есть ли элегантный, эффективный способ сделать это в python2? Кроме того, мы будем запускать скрипт с подходящим (капсула ansible), поэтому зависимость должна быть максимально простой.