feature/task_1 (#3)
Some checks failed
Deploy to Server (Docker) / deploy (push) Failing after 11s
Some checks failed
Deploy to Server (Docker) / deploy (push) Failing after 11s
Reviewed-on: https://git.gocommunity.ru/walleri1/go_winter_work_2025/pulls/3 Co-authored-by: Vitaliy Turov <walleri1@yandex.ru> Co-committed-by: Vitaliy Turov <walleri1@yandex.ru>
This commit is contained in:
parent
8a73b135c0
commit
627cd7d499
46
bash/task1/log_analyzer.sh
Executable file
46
bash/task1/log_analyzer.sh
Executable file
@ -0,0 +1,46 @@
|
|||||||
|
#!/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"
|
1
bash/test_branch.sh
Normal file
1
bash/test_branch.sh
Normal file
@ -0,0 +1 @@
|
|||||||
|
#!/bin/bash
|
25
go/summ/summ.go
Normal file
25
go/summ/summ.go
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"os"
|
||||||
|
"strconv"
|
||||||
|
)
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
summ := 0
|
||||||
|
|
||||||
|
// Проходим по всем аргументам командной строки, начиная с первого
|
||||||
|
for i := 1; i < len(os.Args); i++ {
|
||||||
|
// Преобразуем аргумент в целое число
|
||||||
|
num, err := strconv.Atoi(os.Args[i])
|
||||||
|
if err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, "Ошибка преобразования аргумента '%s': %v\n", os.Args[i], err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
summ += num
|
||||||
|
}
|
||||||
|
|
||||||
|
// Выводим результат
|
||||||
|
fmt.Println(summ)
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user