Eu tenho um script que varre um diretório e faz alguma manutenção nos arquivos nele. Outro processo cria os arquivos no diretório (10 a 30 arquivos por dia).
O script é chamado por meio de um trabalho cron diário. O que eu preciso é acionar o script em um evento (cada vez que um novo arquivo é criado no diretório). Eu prefiro isso ao invés de aumentar a frequência do trabalho cron.
Como eu posso fazer isso? existe um comando ou um programa para instalar?
Agradecemos antecipadamente por qualquer ajuda.
fonte
incron
, oinoticoming
que está aqui .Há também um pequeno programa chamado
iwatch
- veja a página de manual (esta página é para o Ubuntu precisa (12.04), possui links para outras versões do ubuntu).iwatch
tem a capacidade de monitorar pastas recursivamente (ou seja: subpastas também) e enviar e-mails em resposta a eventos de arquivo / diretório.fonte
Outro utilitário que vale a pena conhecer é
fileschanged
( página de manual aqui ), que pode monitorar eventos do sistema de arquivos em arquivos ou diretórios selecionados, por exemplo, o seguinte comandodeve monitorar o diretório atual para eventos de criação de arquivo, escrevendo o nome do arquivo criado
stdout
com um tempo limite de 1 segundo.fileschanged
pode assistir pastas recursivamente (como podeiwatch
ser observado em outra resposta), ao contrário deincron
einoticoming
.fonte
A página do manual inotify está localizada lá
se você preferir scripts python, você pode usar pyinotify
fonte