[via]
Порой появляется необходимость выполнять один и тот же запрос несколько раз. Например, вы увидели, что у вас заканчивается виртуальная память в системе и вы начинаете перезапускать каждый процесс, чтобы выяснить кто же заполняет её, после чего обязательно проверить найден ли источник проблемы. Для того, чтобы в режиме реального времени наблюдать за объемом озу, изменениями в любом файле или результатом выполнения любой команды вы можете использовать "watch".
Watch
Использовать данную команду очень просто, для этого введите в терминале
watch параметры команда
Возможные параметры:
- -b – подаст звуковой сигнал, если произошла ошибка
- -с – интерпретирует последовательность цветов и стилей ANSI
- -d – выделит те данные, которые изменились
- -e – завершит работу, если результат завершения не 0
- -g – завершит работу, если данные изменились
- -n – установит интервал выполнения в секундах
- -p – попробует запускать команду с точными интервалами
- -t – выключит отображение заголовков
- -x – выполнит команду с помощью функции exec языка C
Для удобства мы выделили самые часто используемые параметры.
Для отслеживания используемой ОЗУ каждую секунду выполните команду
watch -n 1 -d free -t -h
После чего вы увидите изменения в объеме использованной ОЗУ в реальном времени. Для выхода нажмите сочетание клавиш Ctrl+C
Таким же образом мы можем следить за параметром load average компьютера или сервера, для этого выполните команду:
watch cat /proc/loadavg
На вывод вы получите 3 значения load average: за минуту, 5 и 15 минут. Также на вывод вы получите еще два поля: первое это число running процессов/число всех процессов в системе, второе это последний идентификатор процесса, выделенный системой
Для отслеживания доступного свободного пространства на всех томах в системе выполните команду
watch df -h
Таким образом вы можете циклически выполнять любую команду, что делает watch – простой утилитой для мониторинга необходимой информации.
Еще по теме: