폴더에 재귀적으로 액세스 하고 싶지만 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
답변1
--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