У меня есть ежедневный скрипт, который каждую ночь получает статистику оборудования со всех моих серверов RHEL и сохраняет их в ггггммдд_daily.log файл. У меня есть другие сценарии, которые я запускаю для этих файлов для извлечения определенных данных (т. DriveArrrayStatus, Состояние оборудования, ДискFreeSpaceи др.) для разных задач.
Пример Состояние оборудования вывод скрипта:
#######################
Сервер: абв
** Фанаты **
Здоровье: Хорошо
** Источники питания **
Резервирование: полное
#######################
Сервер: bcd
** Фанаты **
Здоровье: Частичное
** Источники питания **
Резервирование: Половина
#######################
Сервер: cde
** Фанаты **
Здоровье: вниз
** Источники питания **
Резервирование: Нет
#######################
и т.д... для 44 серверов
Поскольку сбои случаются редко, я хотел бы раскрасить строки, которые показывают какие-либо ошибки при запуске скрипта. Я могу выбрать строки для тщательного изучения с помощью grep:
./Статус оборудования | grep '^Здоровье\|^Избыточность\|$'
Но отсюда мне нужно раскрасить ТОЛЬКО тщательно изученные строки, которые НЕ заканчиваются соответствующими удовлетворительными ответами:
./Статус оборудования | grep --color=auto -v 'Хорошо$\|Полный$'
Я попытался передать оператор grep выбора строки во второй grep или с помощью egrep, но он просто отбрасывает все строки, которые не имеют удовлетворительных ответов из вывода сценария.
Будем очень благодарны любой помощи.