Como usar o inotifywait para assistir arquivos na pasta em vez da pasta
Eu quero usar o inotifyway para monitorar arquivos recém-criados ou movidos dentro de uma pasta, mas apenas os arquivos.
Digamos que minha pasta seja o nome "watch_folder_test" e eu tenho o nome de arquivo "toto.txt". Se eu usar o comando mv para mover o arquivo para o watch_folder_test, recebo uma notificação de que desejo
Digamos que, dentro do watch_folder_test, tenho uma pasta chamada foo e crio um nome de arquivo 'bar.txt ". Recebi a notificação que desejo.
Mas aqui está o meu problema. Se eu tiver um nome de pasta foo fora do watch_folder_test e um nome de arquivo bar.txt dentro dele (foo / bar.txt), e mover toda a pasta para dentro do named_folder_test. Recebo apenas a notificação de que foo foi criado! Nada sobre o bar.txt. No entanto, eu realmente não me importo com foo, só quero saber sobre "bar.txt"
Aqui esta o meu codigo ate agora
#!/bin/bash
inotifywait -mr /home/romain/depot/watched_folder_test -e create -e moved_to |
while read path action file; do
echo "The file '$file' appeared in directory '$path' via '$action'"
for ac in $action
do
isdir=`echo $ac | grep 'ISDIR'`
if [ $? == 0 ]
then
echo "It's a folder"
else
echo "It's a file"
fi
done
done
Como posso ser notificado sobre todos os arquivos que estão em uma pasta movida recentemente, em vez da criação da própria pasta?