다른 스크립트에서 inotifywait 실행을 중지하는 방법은 무엇입니까?

다른 스크립트에서 inotifywait 실행을 중지하는 방법은 무엇입니까?

백업 파일이 저장되기를 기다리는 디렉터리를 모니터링하는 영구 inotifywait 세션(-m 스위치 사용)을 시작한 다음 해당 파일을 관리할 수 있는 다른 디렉터리로 이동하는 스크립트가 있습니다. 스크립트는 다음과 같습니다.

dir=/home/userid/drop/
target=/home/userid/current/

inotifywait -m "$dir" --format '%w%f' -e create |
    while read file; do
        mv "$file" "$target"
        find /home/userid/current -maxdepth 1 -type f -name "*.sql.gz" -print0 | xargs -r0 ls -t | tail -n +5 | tr '\n' '\0' | xargs -r0 rm

    done

위 스크립트는 파일이 삭제되자마자 파일을 이동한 다음 대상 디렉터리를 마지막 4개 파일까지 지웁니다. 이것은 잘 작동하며 crontab 항목(아마 오전 1시 30분쯤)에서 시작하도록 설정할 수 있습니다.

그러나 23시간 45분 후에는 영구 inotifywait 프로세스를 종료하고 다시 시작하기 전에 다른 유지 관리를 수행할 수 있어야 합니다. 따라서 실행 중인 inotifywait 프로세스를 종료하고 다른 유지 관리를 수행한 다음 종료하기 위해 다른 스크립트를 호출하는 다른 crontab 항목을 갖고 싶습니다. 이렇게 하면 첫 번째 crontab 항목에서 디렉터리 모니터링을 다시 시작할 수 있습니다.

터미널 세션에 로그인하지 않고도 무인으로 실행하려면 이것이 필요합니다. 가능합니까? 그렇다면 다른 스크립트에 의해 시작된 inotifywait 세션을 중지하기 위해 유지 관리 스크립트에서 어떤 명령을 사용해야 합니까?

어떤 지침이라도 대단히 감사하겠습니다.

관련 정보