rsync - "ignore-existing" 옵션으로 인해 대상에 아무것도 복사되지 않은 경우에도 소스 디렉터리에서 파일을 삭제합니다.

rsync - "ignore-existing" 옵션으로 인해 대상에 아무것도 복사되지 않은 경우에도 소스 디렉터리에서 파일을 삭제합니다.

내 라우터에 연결된 플래시 드라이브에 폴더가 있는데, 여기에서 시작 시 HTPC에 동기화되어야 하는 파일을 복사합니다. 처음에는 작은 동기화 스크립트가 실행 중입니다.

rsync --remove-source-files --ignore-existing -a source/ destination

그러면 파일이 HTPC로 이동되고 소스 디렉터리의 파일이 삭제됩니다. 그러나 파일이 이미 존재하면 아무 것도 복사되지 않습니다(타임스탬프는 확인하지 않고 파일 이름만 확인함). 하지만 rsync가 대상 디렉토리에 동일한 이름을 가진 파일이 이미 있음을 인식하면 소스 디렉토리의 파일을 삭제하고 싶습니다.

rsync로 이 작업을 수행할 수 있습니까?

답변1

좋은 질문. 비슷한 사용 사례가 있는데, filezilla를 사용하여 업로드를 수행하고(이 특별한 경우에는 병렬 연결로 인해 더 빠르기 때문에) rsync가 단지 확인을 수행하고 전송된 소스 파일을 삭제하기를 원했습니다.

나는 rsync를 -c. 그런 다음에는 일반적인 건너뛰기 확인(크기+시간 기준)을 통해 이전에 삭제하지 않았던 소스 파일도 삭제합니다.

관련 정보