Вики / Базовые команды
watch (повтор команды)
Периодический запуск команды с подсветкой изменений — следить за процессом.
watch повторяет команду каждые N секунд и показывает свежий результат на том же
экране — удобно следить за процессом (ребилд RAID, очередь, размер файла).
watch command # каждые 2 секунды (по умолчанию)
watch -n1 command # каждую секунду
watch -d command # подсветить, что изменилось
| Ключ | Значение |
|---|---|
-n N |
интервал в секундах (можно дробный: -n0.5) |
-d |
подсветить изменения (-d=cumulative — накопительно) |
-t |
без шапки (заголовка) |
-g |
выйти, когда вывод изменится |
-e |
остановиться при ненулевом коде возврата |
-c |
интерпретировать ANSI-цвета |
-x |
передать команду в exec без шелла |
watch -n1 'ss -tlnp | grep :80' # следить за слушающими портами (см. ss)
watch -d free -h # изменения памяти (подсветка)
watch -d 'ps aux --sort=-%cpu | head' # топ по CPU в динамике
watch cat /proc/mdstat # прогресс ребилда RAID (см. mdadm)
watch -n5 'ls -lh /var/log/app.log' # как растёт лог
watch -g 'systemctl is-active nginx' # ждать, пока статус сменится
watch -c 'docker ps' # с цветом, состояние контейнеров
Кавычь команду с конвейером/шаблоном (
watch 'ss | grep x'), иначе|и*применятся к самомуwatch, а не к команде.
Конвейер/grep «не работает» в watch
Заверни всю команду в кавычки: watch 'cmd | grep x'. Без кавычек оболочка
разберёт |/* до watch.
Цвета пропали
По умолчанию watch убирает ANSI-цвет. Включи: watch -c 'cmd' (если команда красит).
Нужно следить за логом построчно
Для логов лучше tail -f (см. files-basics) или journalctl -f (см. journalctl);
watch — для «снимка состояния», а не потока.
Хочу остановиться при изменении / готовности
watch -g cmd завершится, когда вывод изменится (удобно как «жди готовности»);
watch -e cmd — остановится при ошибке команды.
watch -n1 -d 'команда' # каждую секунду, подсветка изменений
watch cat /proc/mdstat # прогресс (RAID/задачи)
watch 'ss -tlnp | grep :80' # кавычки для конвейера!
watch -g cmd # выйти при изменении вывода
watch -c 'docker ps' # с цветом
См. также
- Базовые команды с файлами — Базовые команды
- Мониторинг системы (load, top, vmstat) — Процессы
- Процессы (ps, top, kill, nice) — Процессы