#!/bin/bash # Проверка наличия аргумента if [ "$#" -ne 1 ]; then echo "Ошибка: Необходимо указать путь к лог-файлу." echo "Использование: $0 <путь к лог-файлу>" echo "Этот скрипт анализирует лог-файл на наличие ошибок, предупреждений и информационных сообщений." echo "$0 /var/log/syslog" exit 1 fi # Путь к лог-файлу log_file_path="$1" # Проверка существования файла if [ ! -f "$log_file_path" ]; then echo "Ошибка: Файл '$log_file_path' не существует." exit 1 fi # Переменные для хранения количества сообщений error_count=0 warning_count=0 info_count=0 # Чтение лог-файла и подсчет сообщений while IFS= read -r line do case "$line" in *"ERROR"*) ((error_count++)) ;; *"WARNING"*) ((warning_count++)) ;; *"INFO"*) ((info_count++)) ;; esac done < "$log_file_path" # Вывод результатов echo "Количество сообщений в лог-файле:" echo "Ошибки: $error_count" echo "Предупреждения: $warning_count" echo "Информационные сообщения: $info_count"