Распечатать журнал между двумя датами [дубликат]

0
18.05.2017, 19:16
2 ответа

Использование sed:

sed -n '/May 16 11:00:00/,/May 16 16:30:00/p' /path/to/inputfile

С grep, я думаю, что проблемы могут быть, во-первых, в порядке ваших параметров - вы помещаете аргументы -A и -B после входного файла, поэтому grep, вероятно, пытается прочитать файлы с именами -A, -B и 10000; и, во-вторых, что вы не избегаете своих квадратных скобок. Ваш конвейер может работать следующим образом:

grep -E -A10000 'May 16 11:00:00' alert.log | grep -E -B10000 'May 16 16:30:00'

Обратите внимание, что они будут работать только в том случае, если у вас действительно есть запись в журнале, которая соответствует точной отметке времени, которую вы ищете; соответствующим образом отрегулируйте первую и последнюю запись, которые вы хотите использовать в качестве ограничений вашего поиска.

0
28.01.2020, 04:45

Использование egrep на основе приведенного вами примера:

egrep "May 16 1[1-6]:..:.." /path/to/file | egrep -v "May .. 16:[3-5][1-9]:[0-9][1-9]"
0
28.01.2020, 04:45

Теги

Похожие вопросы