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

bosari спросил: 27 ноября 2017 в 06:31 в: bash

Я хотел бы получить результат, скажем, от 2017-12-19 19:14 до целого дня из файла журнала, который выглядит следующим образом -

/var/opt/MarkLogic/Logs/ErrorLog_1.txt:2017-12-19 19:14:00.723 Info: Saving /var/opt/MarkLogic/Forests/Meters/00001829
/var/opt/MarkLogic/Logs/ErrorLog_1.txt:2017-12-19 19:14:01.134 Info: Saved 9 MB at 22 MB/sec to /var/opt/MarkLogic/Forests/Meters/00001829
/var/opt/MarkLogic/Logs/ErrorLog_1.txt:2017-12-19 19:14:01.376 Info: Merging 19 MB from /var/opt/MarkLogic/Forests/Meters/0000182a and /var/opt/MarkLogic/Forests/Meters/00001829 to /var/opt/MarkLogic/Forests/Meters/0000182c, timestamp=15137318408510140
/var/opt/MarkLogic/Logs/ErrorLog_1.txt:2017-12-19 19:14:02.585 Info: Merged 18 MB in 1 sec at 15 MB/sec to /var/opt/MarkLogic/Forests/Meters/0000182c
/var/opt/MarkLogic/Logs/ErrorLog_1.txt:2017-12-19 19:14:05.200 Info: Deleted 15 MB at 337 MB/sec /var/opt/MarkLogic/Forests/Meters/0000182a
/var/opt/MarkLogic/Logs/ErrorLog_1.txt:2017-12-19 19:14:05.202 Info: Deleted 9 MB at 4274 MB/sec /var/opt/MarkLogic/Forests/Meters/00001829  

Я новичок в Unix и знаком с командой grep. Я пробовал приведенную ниже команду

date="2017-12-19 [19-23]:[14-59]"
echo "$date"
grep "$date" $root_path_values

, но она выдает неверную ошибку конца диапазона. Любое решение? Дата будет исходить из переменной, поэтому она будет непредсказуемой. Поэтому не делайте команду, просто имея в виду пример. $ root_path_values ​​- это последовательность файлов ошибок, таких как errorLog.txt, errorLog_1.txt, errorLog_2.txt и т. д.


0 ответов