Eu já vi essa resposta .
Você deve considerar o uso de inotifywait, como um exemplo:
inotifywait -m /path -e create -e moved_to | while read path action file; do echo "The file '$file' appeared in directory '$path' via '$action'" # do something with the file done
Minha pergunta é que, o script acima observa um diretório para criação de arquivos de qualquer tipo, mas como modifico o inotifywaitcomando para reportar apenas quando um arquivo de determinado tipo / extensão é criado (ou movido para o diretório) - por exemplo, deve relatório quando qualquer .xmlarquivo é criado.
O QUE TENTEI:
Eu executei o inotifywait --helpcomando e li as opções da linha de comando. Possui --exclude <pattern>e --excludei <pattern>comandos para EXCLUIR arquivos de certos tipos (usando regEx), mas eu preciso de uma maneira de INCLUIR apenas os arquivos de um determinado tipo / extensão.
pathacima provavelmente não é o melhor nome de variável se você quiser brincar com isso primeiro em um shell. Se você usá-lo, não poderá usar comandos e tudo mais, pois isso basicamente substituiu o padrãoPATH. Por isso, recomendo usar um nome de var alternativo, como emfpathvez disso. ou sejawhile read fpath action file, qualquer comando padrão normalmente disponível no seu shell ainda será.