Получать уведомления о новых файлах на SFTP-сервере
Я ищу любое решение для моей проблемы. У меня есть доступ SFTP к клиентскому серверу, и мне нужен какой-то скрипт или что-то еще, чтобы следить за новыми файлами, потому что они добавляются нерегулярно. Мне нужен этот функционал:
Когда на сервере появляется новый файл, скрипт в лучшем случае отправляет электронное письмо (но я буду благодарен за любые другие виды уведомлений).
У меня может быть только SFTP - так что нет ssh и т. Д. Знаете ли вы что-нибудь подобное?
2 ответа
Я не был доволен другими решениями, поэтому я написал свой собственный скрипт на python, который пройдет через удаленную файловую систему, сохранит путь к файлу в базе данных и отправит мне электронное письмо о новых записях. Вы можете получить его на GitHub!
Учитывая http://manpages.ubuntu.com/manpages/trusty/en/man1/sftp.1.html
- использовать
-b
возможность передавать команды sftp на cd в удаленный каталог и выводить список файлов (используйтеls -l
или жеls -1t
)- вам нужно настроить ssh ключи для аутентификации без пароля
- проанализировать этот вывод, чтобы найти новые файлы
- используйте sftp снова, чтобы получить новые файлы.
Используйте cron для планирования этой работы каждые N минут или часов