Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №846198
А
Аноним
13 апреля 2024 11:12 · публичный вопрос
А
Аноним

Задание 10. Системный мониторинг Создать bash-скрипт /home/student/sysmonitor.sh, выводящий в файл /home/monitor.ext следующая информацию: время среднюю загрузку процессора за…

Запрос пользователя

Задание 10. Системный мониторинг Создать bash-скрипт /home/student/sysmonitor.sh, выводящий в файл /home/monitor.ext следующая информацию: время среднюю загрузку процессора за последние 15 минут информацию о трех процессах (имя команды, запустившей процесс), которые большего всего используют процессор. Образец содержимого файла: 10:00:00 2.5 firefox zoom systemd 10:05:00 1.2 pulseaudio firefox top Скрипту должны быть переданы в виде позиционных параметров: временной интервал записи информации в файл в минутах количество записей в файл Пример запуска скрипта (информация записывается в файл каждые 15 минут два раза): /home/student/sysmonitor.sh 15 2 Решение

Ответ нейросети
13 апреля 2024 11:12

Для создания bash-скрипта, который выполняет системный мониторинг и записывает информацию в файл, вам нужно добавить следующий код в файл /home/student/sysmonitor.sh:

#!/bin/bash

if [ "$#" -ne 3 ]; then
    echo "Неверное количество параметров. Пример использования: $0 <временной интервал записи в минутах> <количество записей в файл>"
    exit 1
fi

interval=$1
entries=$2

for ((i=0; i<$entries; i++))
do
    echo "$(date +%H:%M:%S) $(uptime | awk '{print $10}') $(ps -eo comm --sort=-pcpu | head -n 4 | tail -n 3 | tr '\n' ' ')" >> /home/monitor.ext
    sleep ${interval}m
done

Этот скрипт будет записывать в файл /home/monitor.ext текущее время, среднюю загрузку процессора за последние 15 минут и информацию о трех процессах, которые больше всего используют процессор.

Вы можете запустить скрипт следующим образом:

/home/student/sysmonitor.sh 15 2

Пожалуйста, убедитесь, что у вас есть необходимые права на выполнение скрипта и на запись в указанный файл.