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

Задание 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 14:23

Для выполнения задания по системному мониторингу и созданию bash-скрипта sysmonitor.sh вам потребуется следующий код:

#!/bin/bash

interval=$1
num_entries=$2
output_file=/home/monitor.ext

for ((i=1; i<=$num_entries; i++))
do
    date_time=$(date +%H:%M:%S)
    avg_cpu_load=$(uptime | awk -F 'load average: ' '{print $2}' | awk '{print $1}')
    top_processes=$(ps -eo cmd --sort=-%cpu | head -n 4 | tail -n 3 | sed '1d')

    echo "$date_time $avg_cpu_load $top_processes" >> $output_file
    sleep $(($interval * 60))
done

Этот скрипт будет записывать информацию о средней загрузке процессора и топ-3 процессах в файл monitor.ext каждые 15 минут указанное количество раз. Вам нужно скопировать этот код в файл /home/student/sysmonitor.sh и запустить его с помощью команды, подобной представленной в вашем вопросе.

Задание 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 напиши скрипт
Для выполнения задания по системному мониторингу и созданию bash-скрипта sysmonitor.sh вам потребуется следующий код: ```bash #!/bin/bash interval=$1 num_entries=$2 output_file=/home/monitor.ext for ((i=1; i<=$num_entries; i++)) do date_time=$(date +%H:%M:%S) avg_cpu_load=$(uptime | awk -F 'load average: ' '{print $2}' | awk '{print $1}') top_processes=$(ps -eo cmd --sort=-%cpu | head -n 4 | tail -n 3 | sed '1d') echo "$date_time $avg_cpu_load $top_processes" >> $output_file sleep $(($interval * 60)) done ``` Этот скрипт будет записывать информацию о средней загрузке процессора и топ-3 процессах в файл monitor.ext каждые 15 минут указанное количество раз. Вам нужно скопировать этот код в файл /home/student/sysmonitor.sh и запустить его с помощью команды, подобной представленной в вашем вопросе.