내가 원하는 rsync
재귀 적 폴더하지만 하위 폴더는 특정 깊이로 포함합니다.
예를 들어 다음과 같이 1, 2, 3 또는 4 개의 하위 폴더 깊이를 원합니다.
source/
├── subfolder 1
│ ├── subsubfolder
│ │ ├── subsubsubfolder
│ │ │ └── wanted with depth 4.txt
│ │ └── wanted with depth 3.txt
│ └── wanted with depth 2.txt
├── subfolder 2
│ └── wanted with depth 2.txt
└── wanted with depth 1.txt
답변
--exclude=
옵션을 촉진하십시오 .
깊이 2 (폴더 및 하위 폴더 내의 파일)와 동기화하려면
rsync -r --exclude="/*/*/" source/ target/
그것은 당신에게 이것을 줄 것입니다 :
target/
├── subfolder 1
│ └── wanted with depth 2.txt
├── subfolder 2
│ └── wanted with depth 2.txt
└── wanted with depth 1.txt
깊이 3 (폴더, 하위 폴더 및 하위 하위 폴더 내의 파일)에 동기화하려면
rsync -r --exclude="/*/*/*/" source/ target/
당신에게 줄 것이다 :
target/
├── subfolder 1
│ ├── subsubfolder
│ │ └── wanted with depth 3.txt
│ └── wanted with depth 2.txt
├── subfolder 2
│ └── wanted with depth 2.txt
└── wanted with depth 1.txt