Хочу искать происшествие “ошибочной” строки в файле журнала кроме некоторых строк, который имеет “ошибку” (мы должны проигнорировать эти строки),

Я хочу искать происшествие "ошибки" в использовании файла журнала, если условие и печатает ту ошибку, присутствует в файле журнала. и если не существующий затем не должен печатать найденную ошибку. Проблема здесь находится в моем файле журнала, у меня есть некоторое слово, которое имеет ошибку как подстроку, и я хочу проигнорировать эти слова, поскольку они не считаются как ошибка, которую рассмотрят..

Words are :
"LocalErrorPagePolicy"
"ErrorMapping"
"CustomErrorPagePolicy"
"error=ForceYes"

And also i want to avoid one line where error occurs:
Error details may be seen in the file:

И происшествия отдыха ошибки нужно рассмотреть.

Любая справка, высоко ценившая!

Я попробовал grep -v "string" имя файла, не работает.

1
задан 22 September 2017 в 10:10

1 ответ

Один (очень грубый) подход является к grep всеми "ошибочными" случаями: grep -i "error" FILENAME

Объяснение:

  • -i: Отфильтруйте Нечувствительный к регистру (эквивалентный RegEx /i флаг)
  • "error": Фильтр для термина "ошибка"
  • FILENAME: Файл для поиска в

Затем отфильтруйте тех, которых Вы не хотите:

grep -Eiv "(LocalErrorPagePolicy|ErrorMapping|CustomErrorPagePolicy|error=ForceYes|Error details may be seen in the file:)" FILENAME

Объяснение:

  • -Eiv: Конкатенация нескольких параметров, эквивалентных из grep -E -i -v
  • -E: Интерпретируйте шаблон как расширенное регулярное выражение (ПРЕЖДЕ ЧЕМ, посмотрите man grep для получения дополнительной информации)
  • -i: Нечувствительный к регистру фильтр
  • -v: Инвертируйте смысл соответствия, для выбора несогласующих отрезков длинной линии.

Для шаблона:

  • (): Круглые скобки создают группу соответствия
  • |: Символ вертикальной черты служит логическим or

Это ломается для "нахождения TERM1 ИЛИ TERM2 ИЛИ... ИЛИ TERMX" и затем отбрасывают строки, где те условия найдены.


Если мы добавляем их вместе, мы добираемся:

grep -i "error" FILENAME | grep -Eiv (LocalErrorPagePolicy|ErrorMapping|CustomErrorPagePolicy|error=ForceYes|Error details may be seen in the file:)"


Для тестирования этого, я создал очень маленький фиктивный файл:

LocalErrorPagePolicy
ErrorMapping
CustomErrorPagePolicy
error=ForceYes
Error details may be seen in the file:
Stackoverflowerror
I like errors
error error
LocalErrorErrorError
CustomErrorErrorPolicy
error=errorYes
I am a successfully output!

Результат после применения grep- команда:

Stackoverflowerror
I like errors
error error
LocalErrorErrorError
CustomErrorErrorPolicy
error=errorYes

Как Вы видите, нежелательные условия были фильтрованы успешно.

0
ответ дан 8 December 2019 в 03:58

Другие вопросы по тегам:

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