.html
한 곳에서 다른 곳으로 복사해야 하는 파일이 있습니다 .
소스 폴더에는 를 제외한 파일이 포함되어 있으므로 .html
먼저 파일만 찾은 .html
다음 동일한 구조를 유지하면서 다른 디렉터리에 복사해야 합니다.
이 같은:
cp --parents `find ./src -name '*.html'` ./dist
./dist/src/**/*.js
문제 는 파일이 ./dist/**/*.js
.
요약하자면, 원본 상위 폴더 없이 한 폴더에서 다른 폴더로 모든 파일(폴더 구조를 유지하면서)을 복사하고 싶습니다.
예를 들어:
src/
folder1/
a.html
a.x
folder2/
folder3/
b.html
도착하다
dist/
folder1/
a.html
folder2/
folder3/
b.html
답변1
rsync -rmv --include='*/' --include='*.html' --exclude='*' src/ dest
-r 재귀, -m 빈 디렉토리 정리, -v 자세한 정보. 기본적으로 rsync는 모든 것을 복사하므로 .html 접미사가 있는 파일만 포함하고 나머지는 모두 제외합니다. --include='*/'
rsync를 디렉토리에 강제로 적용하기 위해 존재합니다. rsync가 없으면 아무 것도 복사되지 않습니다. /
src 자체가 dest에 복사되지 않도록 후행 src 가 중요합니다.
man rsync
스키마, 소유권 등을 복사할지 확인 하고 관련 옵션을 추가합니다.