Использование inotify для автоматизации задач в Linux

Практические лайфхаки для разработчиков, DevOps и админов: Docker, Linux, Bash, Python, Golang, Ansible, логи и безопасность — только рабочие решения. Даем готовые команды, конфиги и приёмы диагностики, которые экономят часы и дни. Если нужно быстро настроить, отладить и обезопасить инфраструктуру — вы по адресу.

inotifyinotifywaitlinux

👁 В отличие от простого опроса файлов, inotify позволяет реагировать на события в реальном времени, что может быть полезно для автоматических обновлений, логирования или выполнения скриптов.

📝 Пример использования inotify:

#!/bin/bash

# Создаем слушатель для отслеживания изменений в директории /path/to/directory
inotifywait -m /path/to/directory -e create -e modify |
while read path action file; do
    echo "Файл $file был $action в $path"
    # Запускаем скрипт после изменения файла
    ./my_script.sh
done

📌 Как это работает:

  • Используем команду inotifywait с флагом -m для мониторинга изменений в директории. Мы отслеживаем события create (создание файлов) и modify (изменение файлов).
  • При каждом изменении или создании файла, скрипт выводит сообщение о том, какой файл был изменен или добавлен, и автоматически запускает заданный скрипт.
  • Это полезно для автоматизации процессов обновления конфигураций или обработки данных при изменении файлов, например, для CI/CD пайплайнов.

❗️ Такой подход позволяет значительно упростить обработку событий в реальном времени, обеспечивая более эффективное использование ресурсов.

tags: #linux #автоматизация #полезно

🧭 @recura_tech 🌐 VK 🌐 MAX

Тёмный фон с логотипом RECURA и блоком Bash-кода: пример использования inotifywait для мониторинга директории и запуска скрипта при изменениях.
Пример Bash-скрипта с inotifywait для автоматического запуска скрипта при изменении файлов.

Читайте так же