2016-09-02 2 views
0

특정 파일 형식 (예 : .py) 만 rsync하고 일부 디렉토리 (예 : venv)를 제외하고 싶습니다.Rsync, 일부 디렉토리를 제외한 특정 파일 형식 만 포함

rsync -avz --include='*/' --exclude='venv/' --include='*.py' --exclude='*' /tmp/src/ /tmp/dest/ 

그러나 그것은 작동하지 않습니다

이 내가 시도하는 것이다.

무엇이 누락 되었습니까?

답변

1

rsync의 경우 --include="*.py"을 사용하여 사본에 '*.py' 개의 파일을 포함 할 필요가 없습니다. --include 옵션에는 이전에 --exclude=에 의해 제외 된 파일 만 포함됩니다. rsync은 와일드 카드 지정자로 **을 지정합니다. 재귀 적으로 모든 .py 파일을 복사 할 것이다

rsync -uav --exclude="venc" **.py destination 

: 모든 .py 현재 디렉토리에있는 파일 (및 하위 디렉토리)을 복사하지만 venc 디렉토리에서 아무것도 복사하지하려는 경우 예를 들어, 다음과 유사한 뭔가를 할 수 현재 작업 디렉토리 안팎을 venc 디렉토리와 그 이하의 디렉토리를 제외한 destination으로 변경하십시오.

+0

하위 디렉토리에 * .py 파일을 복사하지 않습니다. – CentAu