Я хотел бы создать сценарий оболочки Linux, который читает файл журнала.
, например. У меня есть файл журнала со строками:
Job: One(106) started.
Job: Two(107) started.
Job: Name(111) started.
Job: EXE(112) started.
Job: SMTG(117) started.
...........
.....
...
Я хочу создать сценарий, который проверяет все задания и отправляет электронную почту, если статус задания не запущен. Статус работы может быть ошибкой, заблокирован, остановлен и т.д. Я не знаю, как написать скрипт, чтобы точно проверять, не запущен ли статус.
grep -v 'Job:.*started.' yourfile.log | while read line; do
# your not started line is here
echo $line
done
Небольшое объяснение:
grep
прочитает ваш файл и отфильтрует строки, соответствующие шаблону, поэтому мы не матч начал вакансии. Если вы читаете не начатые строки, вы можете заменить echo $ line
и отправить туда электронное письмо.
awk '$0!~/started/{print}' logfile | mail -s "Jobs not started" abc@xyz.com