이것을 실행하면:
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/