Como registrar todos os eventos realizados no diretório?

12

Como posso registrar todos os eventos realizados em um diretório específico?

Eu quero registrar a entrada de cada diretório modificado dentro de algum tempo. Estou usando o comando find . -type d -mmin -5 .

Além disso, eu quero colocar mais detalhes, quando qualquer diretório é movido para outro lugar, eu preciso adicionar os detalhes do log abaixo, por exemplo,

directory "xyz" moved from "home/usr/xyz" => to "home/usr/documents/xyz"
    
por Ghanshyam Rathod 07.10.2012 / 22:07

1 resposta

9

Se estiver usando Linux , você deve tentar o comando inotifywait , ele foi projetado para ouvir eventos em arquivos ou diretórios.

inotifywait -m -r /dir

Você pode usar um loop while para filtrar a saída.

Além disso, é muito leve: não é necessário poll() a cada N segundos, é tudo mágica.

Veja o link

    
por 07.10.2012 / 22:15