2011-05-09 3 views
0

У меня есть скрипт python с использованием Pyinotify, который делает некоторые вещи на IN_MOVED_TO. Какой самый простой способ запускать скрипт на определенных файлах, используя другой скрипт python, без фактического перемещения файлов и обратно?Trigger inotify events

ответ

1

Создайте функцию «клея». Скажем, исходный код:

def some_inane_os_api(with, lots, of, arguments): 
    ... your code ... 

надо заменить:

def some_inane_os_api(with, lots, of, arguments): 
    your_code(just, the, arguments, you need) 

def your_code(...) 
    ... your code ... 

Теперь вы можете вызвать your_code() (который имеет гораздо более простой API) из тестов.

Скажем, что у исходного API есть несколько сложных структур. Все, что вам нужно сделать, это скопировать соответствующие данные из этой структуры в параметры или пару простых вспомогательных объектов.

Это изолирует ваш код от сложного API и упрощает его тестирование и/или повторное использование.

0

вы можете избежать перемещения файла, просто переименовать файл (который очень похож на Linux), например mv file file.sav && mv file.sav file