rsync -r을 기존 폴더로

rsync -r을 기존 폴더로

이것을 실행하면:

rsync -r /a/b/c /a/d/e

나는 이것을 얻을 것이다:

/a/d/e/c

하지만 내가 찾고 있는 것은:

/a/d/e

이렇게 해도 문제가 해결되지 않습니다.

rsync -r /a/b/c/* /a/d/e

위의 내용은 도트 파일(숨겨진 파일)을 건너뛰기 때문입니다. 이 문제를 어떻게 해결합니까? 기존 디렉터리(이 경우에는 e?) 라는 폴더에 복사합니다.

답변1

rsync소스가 후행 문자열로 끝나면 다르게 처리됩니다 /.

  • 후행 /:rsync -r source/ target

    결과: target사본이 생성되었습니다 source.

  • 후행 없음 /:rsync -r source target

    결과: target/source사본이 생성되었습니다 source.

매뉴얼에는 rsync다음과 같이 언급되어 있습니다.

/소스에 대한 후행을 "이름으로 디렉터리 복사"가 아니라 "이 디렉터리의 내용 복사"로 생각할 수 있지만 두 경우 모두 포함 디렉터리의 속성이 대상의 포함 디렉터리로 전송됩니다.

답변2

아주 근접한...

$ rsync -r /a/b/c/ /a/d/e/

관련 정보