Warum wird meine inotifywait-Schleife nach dem Entfernen einiger Unterverzeichnisse beendet?

Warum wird meine inotifywait-Schleife nach dem Entfernen einiger Unterverzeichnisse beendet?

ich habe das folgende Bash-Skript:

#!/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

die Sache ist, dass die ersten beiden Befehle gut funktionieren, aber der Prozess wird beendet, nachdem der Befehl „find -exec“ (erfolgreich) ausgeführt wurde. Irgendwelche Ideen?

Übrigens, wenn ich „find -exec“ entferne, geht alles gut.

Antwort1

Versuchen Sie Folgendes (beachten Sie das !)

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

verwandte Informationen