로컬 파일과 일치하는 원격 파일을 삭제하거나, 다운로드하는 동안 파일을 삭제하세요.

로컬 파일과 일치하는 원격 파일을 삭제하거나, 다운로드하는 동안 파일을 삭제하세요.

producer두 개의 호스트 와 consumer다음 프로세스가 있다고 가정해 보겠습니다 .

  1. producer파일 추가자주도착하다 /some/path.
  2. consumer이 파일을 다음으로 가져옵니다.그것은 /some/path(예: 를 통해 rsync) 그리고프로세스그들을.
  3. 우리는 지금 consumer필요하다 삭제처리된 파일(및 처리된 파일만)두 명의 호스트.

rsync(3) 또는 이와 동등한 명령으로 수행할 수 있습니까 consumer?


아니면 (2)단계를 처리하는 동안 다운로드한 파일을 쉽게 삭제할 수 있나요 consumer?producer


이는 항상 파일을 생성하므로 각 파일이 한 번만 producer처리되도록 하려고 합니다 .consumer

답변1

consumer이 rsync 명령을 사용할 수 있습니다 .

rsync -az --remove-source-files user@producer:/some/path/ /some/path/

그런 다음 프로세스가 완료되면 consumer프로세스에서 파일을 삭제하도록 합니다.

rm -f /some/path/file

관련 정보