.R 확장자에 대한 rsync 필터링이 작동하지 않습니다.

.R 확장자에 대한 rsync 필터링이 작동하지 않습니다.

이것이 내가 사용하는 것입니다:

rsync -rav --include '*/' --exclude '*' --include '*.R' user@remote:/folder/. .

원격 폴더와 모든 하위 디렉터리에 있는 모든 .R 파일을 복사하려고 합니다. 결과적으로 모든 디렉터리가 복사되었지만 비어 있습니다.

여기서 내가 어디서 잘못됐나요?

미리 감사드립니다!

참고: 나는 이 기사를 언급하고 있습니다:rsync는 include 옵션을 사용하여 특정 유형의 파일만 복사합니다..

답변1

두 가지 사항을 변경해야 하며 한 가지 제안을 고려해야 합니다.

  • .R포함 및 제외 지시어는 왼쪽에서 오른쪽으로 처리되므로 모든 것을 제외하기 전에 파일(기타)을 포함 해야 합니다.
  • --prune-empty-dirs대상에만 관련 디렉터리를 생성하는 데 사용합니다 .
  • -r의미하는 것처럼 그럴 필요는 없습니다.-a

그래서

rsync -av --prune-empty-dirs --include '*/' --include '*.R' --exclude '*' user@remote:/folder/ .

관련 정보