inotifywait и rsync печатает временные имена файлов

Я пишу скрипт bash, который будет отправлять запрос POST на удаленный сервер каждый раз, когда в каталоге создается новый файл. Я использую RSYNC для синхронизации нескольких каталогов с основным каталогом. Затем главный каталог просматривается inotifywait который запускает выполнение скрипта при обнаружении новых файлов.

Проблема заключается в том, как RSYNC создает файлы, которые я читаю здесь. Временное расширение Rsync, которое RSYNC использует mktemp который создает имена файлов, такие как .filesynced.x12fj1 но затем переименует их в filesynced после завершения копирования.

Поэтому в моем inotifywait bash-скрипте я получаю имена файлов temp, а не имя файла после его переименования. Мне интересно, может ли кто-нибудь указать мне в правильном направлении, чтобы я мог получить имя файла после его перемещения и переименования.

 #!/bin/bash inotifywait -m -q -e close_write /edi-files | while read path action file; do echo "The file '$file' appeared in directory '$path' via '$action'" # send contents of $file to api endpoint. done 

CRON JOB:

 */1 * * * * rsync -avz --no-perms --no-o --no-g --remove-source-files /home/dir3/upload/ /home/dir2/upload/ /home/dir1/upload/ /edi-files/ 

ТЕКУЩИЙ ВЫХОД:

 The file '.xxxxxxx1.ATM.8I2mrS' appeared in directory '/edi-files/' via 'CLOSE_WRITE,CLOSE' The file '.xxxxxxx2.ATM.MnIMPP' appeared in directory '/edi-files/' via 'CLOSE_WRITE,CLOSE' The file '.xxxxxxx3.txt.3FSceN' appeared in directory '/edi-files/' via 'CLOSE_WRITE,CLOSE' The file '.xxxxxxx4.txt.GoIDCK' appeared in directory '/edi-files/' via 'CLOSE_WRITE,CLOSE' 

Linux и Unix - лучшая ОС в мире.