为什么我的 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

相关内容