2006/6/10, Pedro Henrique Morsch Mazzoni <[EMAIL PROTECTED]>:
Olá pessoal,

Estou procurando um modo de rodar um script sempre que um arquivo
determinado seja alterado.
Preciso de algo que não ocupe CPU ( loops :) ). Também não pode ser o FAM.
Alguma dica?

Grato,
Pedro MAzzoni
-------------------------
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

Um arquivo é alterado quando muda de tamanho, seja para mais ou para menos, as chances de um arquivo ser alterado e manter o exato mesmo tamanho em KB é a mesma de um trovão acertar o mesmo lugar duas vezes, apesar de não ser totalmente impossível é muito improvável.

Você pode tentar fazer um script que receba o tamanho do arquivo de tempo em tempo (isso não come tanto processamento, é quase nada, se você usar as ferramentas como o sleep por exemplo) e se o valor for diferente do valor antigo, executar o que você quer, então ele deve guardar o valor novo do tamanho do arquivo, e verificar de tempo em tempo...e...se for diferente do valor guardado fazer o mesmo processo, como programador posso te dizer que é possível fazer isso usando C, entretanto não terei tempo para escrever isso agora, recomendo que absorva minha ideia e transforme em algo de útil no meio de suas habilidades.

Como dica deixo aqui que fazendo du -k arquivo retornará o tamanho dele e você poderá arrumar um jeito de filtrar e passar esse valor para seu script/programa com segundas intenções.

Qualquer dúvida relacionada ao que eu falei me mantenha informado, desde que não me coloque pra codar, é claro hehe :)

Ats,

Hugo Pessoa/NgD.

--
[Freebsd User Group]

Fug-Br/BsD-Ce proud active member.

There will be a day machines will reign, and only the ones able to understand them will survive.
-------------------------
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

Responder a