Существует каталог A
, содержимое которого часто меняется другими людьми.
Я сделал личный каталог, B
где я храню все файлы, которые когда-либо были A
.
В настоящее время я просто запускаю время, rsync
чтобы получить файлы для резервного копирования из A
в B
. Однако я боюсь, что некоторые файлы будут добавлены A
, а затем удалены, A
прежде чем я получу возможность скопировать их B
.
Каков наилучший способ предотвратить это? В идеале я хотел бы, чтобы мой текущий скрипт резервного копирования запускался каждый раз, когда содержимое A
менялось.
источник
incrond
также может представлять интерес./etc/profile
для всей системы или.bash_profile
только для вашего пользователя. Чтобы запустить его после загрузки, это зависит от вашего вкуса Unix / Linux;/etc/rc.local
,/etc/rc.d/
Или/etc/init.d/
--monitor
коммутатора (и вместо этого перенаправить вывод в ваш цикл), в противном случае возникают большие издержки приinotifywait
повторномСтрого говоря, если кто-то уронит файл и очень быстро удалит его, вы можете пропустить его. Использование inotify (в Linux или аналогичной функции в других приложениях) делает окно риска небольшим.
Если вы можете смонтировать файловую систему по вашему выбору в этот каталог (я понимаю, что это может быть не вариант), вы можете установить такую, которая будет записывать все версии файлов, например, copyfs .
источник
Попробуйте
entr
инструмент командной строки, который может запускать произвольные команды при изменении файлов. Начиная с версии 2.9,-d
была добавлена опция просмотра каталога ( ), чтобы реагировать на события, когда в каталог добавлялся новый файл.Пример запуска утилиты, если в проект добавлен новый файл:
Единственным следствием этого является то, что если появляется новый файл, он должен выйти, чтобы позволить внешнему циклу оболочки повторно сканировать файловую систему.
Вот версия без опции просмотра каталога:
Вот более простой пример в зависимости от ваших потребностей:
Проверьте: entrproject.org веб-сайт для более подробной информации.
источник
Программа , которую вы ищете,
inotify
.источник