제외 목록에 절대 경로를 제공 하고 있습니다.
rsync를 사용하여 시작하는 모든 제외 (또는 포함!) 경로 /
는 " 전송 루트 "에 고정됩니다 .
이 경우의 전근은 /home/chris
입니다. 당신이했다면 :
rsync -Paz --exclude-from 'rsync-exclude.txt' / admin@192.168.1.65:
... 그런 다음 제외가 작동해야합니다 (그러나 파일 시스템의 다른 모든 것을 복사하고 있습니다 !).
당신이 당신의 동기화하려는하지만 이후 홈 디렉토리를, 그리고 하위 디렉토리가 없다 /home/chris
라는 이름은 "home/chris/Downloads"
, rsync
일치 아무것도 발견하지 않습니다.
따라서 파일 에서 /home/chris
부분을 제거 rsync-exclude.txt
하십시오.
실제로 파일에 한 줄만 있으면됩니다.
/Downloads
참고 당신이 선두를 지정하지 않으면 것을 /
, 그리고 당신이 다른 디렉토리라는 한 일이 "Downloads"
, 그 또한 제외된다. "최상위"(소스 디렉토리와 관련하여 "전송 루트"라고도 함) Downloads
디렉토리 만 제외하고 싶다고 가정 하여 Leading을 원할 것 /
입니다.
가장 쉬운 방법 (몇 가지 경로 만 제외)
하나의 디렉토리 만 제외해야하는 경우 다음을 수행하십시오 (별도의 파일 제외).
rsync -Paz --exclude /Downloads /home/chris/ admin@192.168.1.65:LinuxHome
다음과 같이 --exclude
태그를 함께 연결할 수도 있습니다 .
rsync -Paz --exclude /Downloads --exclude '/Something Else' --exclude .hiddenFile /home/chris/ admin@192.168.1.65:LinuxHome
슬래시가 없으므로 복사 하는 모든 디렉토리 .hiddenFile
에서 제외 됩니다 !
그러나 몇 가지 제외가 있다면 --exclude-from
파일 과 함께하는 것이 좋습니다 .
노트
난 당신이 바로 그것을 가지고 있다고 볼 수 있지만, rsync를 새로운 사람들이해야 끝에 슬래시주의 의를/home/chris/
rsync
매뉴얼 페이지 를 인용하자면 , "이름으로 디렉토리를 복사하는 것과는 반대로"이 디렉토리의 내용 복사 "를 의미하는 것으로 소스에서 후행 /을 생각할 수 있습니다."
당신이 슬래쉬 것을 중단 그래서, 당신은라는 디렉토리로 끝날 것입니다 chris
, 대상 디렉토리에 들어있는 모든 것을 /home/chris
(원래 제외하고는 Downloads
물론 디렉토리를!).