автоопределение файла в папке - PullRequest
1 голос
/ 16 декабря 2011

Извините, не знаю, как лучше сформулировать этот вопрос.

Мой сценарий состоит в том, что у меня есть некоторый код Python (на компьютере с Linux), который использует XML-файл для получения своих аргументов для выполнения задачи, по завершении задачи он удаляет XML-файл и ожидает другого XML-файла для приезжайте, чтобы сделать это снова и снова.

Я пытаюсь выяснить, как лучше всего получать уведомления о поступлении xml-файла в указанную папку.

В качестве способа можно было бы постоянно отслеживать папку в коде Python, но это означало бы много избыточных ресурсов, используемых в ожидании появления чего-либо (что может быть всего несколько раз в день). Другой способ - установить cronjob, но его эффективность не будет лучше, чем мониторинг из кода. Я надеялся, что можно было бы установить какое-то прерывание, которое предупредит код при появлении XML-файла.

Есть мысли?

Спасибо.

1 Ответ

3 голосов
/ 16 декабря 2011

Если вы ищете что-то «простое», чтобы просто запустить определенный скрипт при поступлении новых файлов, демон incron предоставляет очень удобную комбинацию inotify(7) и cron(8) -подобногоподдержка выполнения программ по требованию.

Если вы хотите, чтобы что-то немного лучше интегрировалось в ваше приложение, или если вы не можете позволить себе постоянные fork(2) и execve(2) подхода incron, тогдавероятно, следует использовать интерфейс inotify(7) непосредственно в вашем скрипте.Модуль pyinotify может интегрироваться с базовыми интерфейсами inotify(7).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...