GREP + поиск рекурсивный сложный синтаксис в папке в файлах / сценариях

Предполагается, что вы используете версию last из пакета util-linux:

last -s '2015-11-01'  | sort -k1,1 -u

или даже:

last -s '-1 month'  | sort -k1,1 -u

или

last -s '2015-07-01' -t '2015-07-31' | sort -k1,1 -u

last имеет опции -s (--since) и -t (--until) для ограничения вывода определенными датами и временем. Опция sort -k1,1 -u выполняет уникальную сортировку только по первому полю вывода last.

Подробнее см. в man last, особенно поиск по ФОРМАТЫ ВРЕМЕНИ.

0
09.03.2019, 10:39
1 ответ

Для поиска фиксированной строки (, а не регулярного выражения ), используйте параметр -Fс grep. Если вам дополнительно нужно убедиться, что ваша строка соответствует всей строке , используйте-x:

grep -Fx -r '...your string here...' directory

Чтобы получить приблизительные совпадения (, если поиск по полной строке ничего не возвращает ), я бы начал только сport is up(без -x),или, возможно,

grep -F -r -e 'port is up' -e 'valid output' directory

Ни |, ни {, ни }не являются особыми в шаблоне регулярного выражения, когда вы используете базовое регулярное выражение, как здесь. 'никогда не бывает специальным в регулярном выражении. Однако, поскольку вы ищете по строке (, а не по шаблону ), тем не менее следует использовать -F.

1
28.01.2020, 02:42

Теги

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