В Linux команда watch
используется для запуска команд, определяемых пользователем, через равные промежутки времени.
Команда временно очищает всё содержимое терминала и отображает вывод присоединённой команды вместе с текущей системной датой и временем. По умолчанию вывод обновляется каждые две секунды.
Содержание
Синтаксис
watch [опции] [команда]
Опции
- -b, --beep
- Звуковой сигнал, если команда имеет ненулевой выход (ошибку)
- -c, --color
- Интерпретировать последовательности цветов и стилей ANSI
- -d, --differences[=<permanent>]
- Выделять изменения между обновлениями
- -e, --errexit
- Выйти, если команда имеет ненулевой выход
- -g, --chgexit
- Выйти при изменении вывода из команды
- -n, --interval <secs>
- Указать N секунд ожидания между обновлениями
- -p, --precise
- Попытаться выполнить команду с точными интервалами
- -t, --no-title
- Отключить заголовок
- -w, --no-wrap
- Отключить перенос строк
- -x, --exec
- Передать команду в
exec
вместоsh -c
Примеры использования команды watch в Linux
Произвольный интервал
Установить настраиваемый интервал для запуска определяемой пользователем команды и отображения вывода с помощью опции -n
:
$ oleg@mobile:~:$ watch -n 10 date
Опция -n
позволяет использовать доли секунды с минимальным интервалом 0,1 секунды. При вводе десятичных знаков точка .
и запятая ,
работают для любой локали.
Выделение изменений между обновлениями
Для этого используется опция -d
и изменения выделяются:
$ oleg@mobile:~:$ watch -d date
Выход при изменении
В данном случае используется опция -g
и при изменениях в выводе команда завершается:
$ oleg@mobile:~:$ watch -g free
Здесь была добавлена команда free
, позволяющая отслеживать потребление памяти вашей системой. Она завершила работу при изменении значений.
Отключение заголовка
Для отключения заголовка, содержащего время интервала, определяемую пользователем команду и текущее системное время используется опция -t
:
$ oleg@mobile:~:$ watch -t date
Оповещение об ошибке
Если выходное обновление завершается сбоем из-за ошибки можно использовать звуковое оповещения (опция -b
):
$ oleg@mobile:~:$ watch -b date
Выводы
В Linux команда watch
полезна, когда вам нужно отслеживать изменения в выводе команды с течением времени. Это включает в себя использование диска, время безотказной работы системы или ошибки отслеживания.