Как выйти из watch linux

Unable to exit from watch

Now my problem is I’m unable to exit from watch — without closing the terminal. I read man page of watch but they have not mentioned how to exit from watch screen. Is there is magic key combo that you need to use to exit from watch ? It’s like one those problems you face when you for the first time open vim and don’t know how to close it.

Watch works like tail -f , a command to inspect realtime logfiles, for example: sudo tail -f /var/log/syslog . It will not end, unless you type Ctrl-C

1 Answer 1

Press Ctrl-C to interrupt watch . Ctrl-C is the general key combination to kill the foreground process in the shell. If that fails (it sometimes does for hung processes), pressing Ctrl-Z and issuing kill -9 %1 to kill process number one works.

If you press Ctrl-Z you can do more things:

  • Resume the job to foreground by running fg
  • Resume the job in the background running bg
  • List running jobs using jobs
  • Manipulate the job, as mentioned, using kill
  • Change priority of job using renice
  • Start new jobs, leaving the old running in the background

okay, this works. But did the watch developers not give way to exit from it, like what we have key — q for exiting from htop/top. I was looking for something like that.

It does say: By default, watch will run until interrupted. This is unix-ese for ending it with Ctrl-C 🙂

* if you prefer you can make your own watch with a while loop like this: while true; do clear; tree ./ ; read -t2.0 -s -n1 k;[[ $k == «q» ]]&&break; done — I wrapped a custom ps|awk pipeline this way because «it looks like top » I wanted it to behave like it.

Источник

Команда WATCH в Linux

Продолжаем рассматривать полезные команды в Linux. Команда (утилита) watch позволяет запускать другие команды по расписанию (если точнее, через одинаковые промежутки времени) и отображать вывод запускаемых команд в окне терминала.

watch [параметры] [команда_для_вывода]

Рассмотрим параметры команды watch .

-d — данные в выводе команды, которые отличаются от предыдущих, будут подсвечены;

-n — интервал запуска команды (по умолчанию, если не задан данным параметром, две секунды);

Читайте также:  Драйвер intel hd 4000 linux

-t — отключение отображения заголовка;

-b — включение подачи звукового сигнала, если при выполнении команды возникнет ошибка;

-e — при возникновении ошибки вывод данных будет остановлен;

-g — выход из команды watch , если в выводимых данных возникнут изменения;

-c — интерпретирует последовательность цветов и стилей ANSI;

-x — выполнение команды будет передано интерпретатору sh -c. При использовании полной версии написания ( —exec ) команда будет выполняться с помощью утилиты exec.

В качестве примера использования команды watch посмотрим изменение текущих даты и времени:

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

Команда WATCH в Linux

Если нужно подсветить изменения, используем немного другую команду:

Команда WATCH в Linux

Как видите, первой подсветилась информация о сменившихся секундах.

Конечно, мониторинг текущего времени это не всё, на что способна команда watch . Как же использовать её на практике? Ну, например, при помощи команды watch очень удобно мониторить использование памяти.

Команда WATCH в Linux

В этом примере мы установили интервал обновления информации равным 10 секундам. При установке этого интервала через параметр -n следует учитывать, что значение данного параметра не может быть меньше 0,1, а вот максимальное его значение не ограничено.

То же самое, но без заголовка:

Команда WATCH в Linux

Ну и напоследок о том, как выйти из работающей утилиты watch. Сделать это можно одной из двух комбинаций клавиш: Ctrl+C или Ctrl+Z.

Источник

Команда watch в Linux

В этом руководстве мы познакомим вас с командой watch .

watch используется для запуска любой произвольной команды через равные промежутки времени и отображает вывод команды в окне терминала.

Это полезно, когда вам нужно многократно выполнять команду и наблюдать, как выходные данные команды меняются с течением времени. Например, вы можете использовать команду watch для отслеживания времени безотказной работы системы или использования диска.

Утилита watch является частью пакета procps (или procps-ng ), который предварительно установлен почти во всех дистрибутивах Linux.

Как использовать команду watch

Синтаксис команды watch следующий:

Чтобы лучше проиллюстрировать, как работает команда watch давайте запустим команду date :

Как вы можете видеть на изображении выше, команда watch временно очистит все содержимое терминала и начнет выполнение предоставленной команды через равные промежутки времени. При использовании без какой-либо опции watch будет запускать указанную команду каждые две секунды.

В верхнем левом углу заголовка экрана вы можете увидеть интервал обновления watch и выполненную команду ( Every 2.0s: date ), а в верхнем левом углу watch показывают текущее время и дату. Если вы хотите отключить заголовок, используйте параметр -t ( —no-title ).

Читайте также:  Linux check if file is open

Вывод указанной команды отображается на экране и регулярно обновляется каждые две секунды.

Чтобы выйти из команды watch , просто нажмите Ctrl+C Вы также можете настроить watch для выхода при изменении вывода команды, используя параметр -g ( —chgexit ).

В следующих разделах мы рассмотрим наиболее часто используемые параметры команды watch .

Как изменить временной интервал

Что делать, если интервал обновления по умолчанию в две секунды не подходит для вашего варианта использования?

Параметр -n ( —interval ), за которым следует желаемое количество секунд, позволяет вам изменить временной интервал между обновлениями:

watch -n INTERVAL_IN_SECONDS COMMAND 

Например, чтобы отслеживать использование дискового пространства с помощью команды df и обновлять экран каждые пять секунд, вы должны выполнить:

Подчеркивая разницу между обновлениями

Параметр -d ( —difference ) заставит watch выделять изменения между последовательными обновлениями.

Допустим, вы хотите контролировать время безотказной работы системы, выполнив команду uptime и выделив изменения. Команда будет такой:

Если вы хотите, чтобы блики были липкими, передайте =cumulative параметру -d . Это означает, что все значения, которые когда-либо изменялись, останутся выделенными.

watch -d=cumulative COMMAND 

Команды с конвейерами

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

watch 'COMMAND_1 | COMMAND_2' 

Например, следующая команда будет отслеживать количество активных соединений на порту 80 используя комбинацию утилит netstat и grep :

watch "netstat -anp | grep -c ':80b.*LISTEN'"

Выводы

К настоящему времени вы должны хорошо понимать, как использовать команду Linux watch . Вы всегда можете просмотреть все доступные параметры команды watch , набрав в терминале man watch .

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Источник

Команда watch Linux

Иногда возникает необходимость запускать ту или иную команду несколько раз. К примеру, если были замечены неполадки в работе сервера и есть основания полагать, что их причина кроется в использовании памяти либо выполнении операций ввода и вывода. Также это может понадобиться для отслеживания изменений в каталогах. Во всех этих и других случаях на помощь придет команда watch.

По умолчанию команда watch linux включена почти во все дистрибутивы Linux. Ее задача — запускать указанную пользователем команду через определенные промежутки времени и печатать вывод этой команды в окне терминала. Работу watch можно сравнить с работой tail, с той лишь разницей, что источником вывода является не файл журнала, а другая команда.

Команда watch в Linux

Синтаксис и опции

Синтаксис команды watch крайне прост:

Читайте также:  Windows copy file to remote linux

watch опции команда_для_вывода

Перечень опций невелик, но их достаточно для эффективного использования команды:

  • -d (—differences) — служит для выделения тех данных в выводе команды, которые отличаются от предыдущих.
  • -n (—interval seconds) — позволяет установить желаемый интервал запуска команды.
  • -t (—no-title) — выключает отображение заголовков.
  • -b (—beep) — если при выполнении команды возникнет ошибка, будет подан звуковой сигнал.
  • -e (—errexit) — при возникновении ошибки вывод данных будет заморожен, команда watch прекратит работу после нажатия комбинации клавиш.
  • -g (—chgexit) — выход при условии, что в выводе команды обнаружатся изменения.
  • -c (—color) — интерпретирует последовательность цветов и стилей ANSI.
  • -x (—exec) — выполнение команды будет передано интерпретатору sh -c поэтому, возможно, вам придется использовать дополнительные кавычки чтобы добиться желаемого эффекта. При использовании полной версии написания (—exec) команда будет выполняться в с помощью утилиты exec.

Примеры использования watch

Проще всего продемонстрировать работу команды watch, наблюдая за тем, как компьютер использует оперативную память:

В данном случае не были использованы опции команды watch, зато к выполняемой команде free пришлось добавить параметр -m, который отвечает за отображение свободной памяти RAM. Так тоже можно и нужно делать, чтобы получить искомый результат.

Чтобы не запоминать каким был предыдущий результат вывода и не отслеживать изменения самостоятельно, стоит поручить эту работу опции -d. Она подсвечивает ту информацию, которая отличается от предыдущей:

На каждом из скриншотов в верхней строке есть надпись «Every 2,0s». Она означает, что программа перезапускается каждые 2 секунды. Этот интервал установлен по умолчанию, но его можно изменить, используя опцию -n.

watch -n5 -d ‘cat /proc/loadavg’

Обратите внимание на то, что значение -n не может быть меньше 1. Верхняя планка не ограничена.

Если возникла необходимость получить на экране терминала больше места для полезных данных, можно убрать заглавную информацию. Для этого предназначена опция -t.

Интервал обновления, опции команды и текущая дата больше не отображаются.

Что касается выхода из утилиты watch, то он осуществляется при нажатии клавиш Ctrl+C или Ctrl+Z. Пока пользователь не воспользуется одной из этих комбинаций, команда будет выполняться с заданными параметрами.

Выводы

Команда watch linux — это простой и эффективный инструмент для всех, кто занимается администрированием серверов. Впрочем, и обычные пользователи могут найти ей применение. Если у вас возникли вопросы относительно использования watch на компьютерах с установленной операционной системой Linux, задавайте их в комментариях.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Оцените статью
Adblock
detector