일부 하위 디렉터리를 삭제한 후 inotifywait 루프가 종료되는 이유는 무엇입니까?

일부 하위 디렉터리를 삭제한 후 inotifywait 루프가 종료되는 이유는 무엇입니까?

다음 bash 스크립트가 있습니다.

#!/bin/sh
dir1=/source/dir/path/
while inotifywait -qqre modify "$dir1"; do
   rm -r /destination/dir/path
   find /source/dir/path/ -name .svn -exec rm -rf '{}' \;
   cp -ruv /source/dir/path/* /destination/dir/path/
done

문제는 처음 두 명령이 제대로 실행되지만 (성공적인) "find -exec" 명령을 실행한 후 프로세스가 종료된다는 것입니다. 어떤 아이디어가 있나요?

그런데 - "find -exec"를 제거하면 모든 것이 원활하게 진행됩니다.

답변1

이것을 시도해 보세요(참고!)

dir1=/source/dir/path/
while ! inotifywait -qqre modify "$dir1"; do
   rm -r /destination/dir/path
   find /source/dir/path/ -name .svn -exec rm -rf '{}' \;
   cp -ruv /source/dir/path/* /destination/dir/path/
done

관련 정보