rsync에서 제외 된 파일을 포함하는 방법 rsync를 설정하려고 .htaccess하지만

를 제외한 모든 .*파일 을 제외하는 rsync를 설정하려고 .htaccess하지만 불행히도 작동하지 않습니다.

rsync -avP --exclude=".*" --include="./.htaccess" ./. user@server:/dir

일반적인 제외 규칙을 어떻게 든 제외 할 수 있습니까?



답변

첫 번째 일치 규칙이 적용되므로 .htaccess제외하기 전에 포함하십시오 .*.

rsync -avP --include=".htaccess" --exclude=".*" . user@server:/dir

이것은 .htaccess모든 수준에서 복사 합니다. 나는 당신이 무엇을 의도했는지 모른다 ./.htaccess; 사본의 루트에서만 파일을 일치 시키려면으로 패턴을 시작하십시오 /. root 만 원할 경우 루트 가 아닌 규칙이 실제로 우선적으로 적용되므로을 .htaccess사용할 수 없습니다 --include='/.htaccess' --exclude='.*'. 더 복잡한 작업을 수행해야합니다.

rsync -avP --exclude='/*/**/.htaccess' --include='.htaccess' --exclude=".*" . user@server:/dir

추가 자료 : rsync 필터의 기본 원칙 .