디렉토리에 앉아서 새 디렉토리나 파일이 추가되면 각 파일을 다른 위치에 재귀적으로 복사하는 Bash 스크립트를 만들고 싶습니다. 예를 들어:
내 홈 디렉터리에 앉아서 듣도록 스크립트를 설정할 수 있습니다.
/home/
test
그런 다음 다음을 포함하는 새 디렉토리를 추가하면test.txt
스크립트는 예를 들어 다음 위치에 복사됩니다
test/test.txt
./home/user/Desktop/test
설치할 수 없습니다 inotifywait
. 가능합니까? 감사해요
답변1
당신이 할 수 있는 것은 아래와 같은 기능을 사용하여 매시간 실행되는 cronjob을 갖는 것입니다. 물론 다른 시간을 사용할 수도 있습니다.
find /home/user/ --mmin -60 -exec echo This file changed: {} \;
그러면 위의 60분과 같이 주어진 시간 내에 수정된 모든 파일이 출력됩니다.
여기 제가 생각해낸 예가 있습니다. 변경된 디렉터리만 복사하므로 루트의 최상위 디렉터리만 복사하므로 효율적이지 않습니다.
find /home/name/* -maxdepth 0 -mmin -60 -exec cp -r {} /some/other/dir/ \;