디렉터리 뼈대 복제 - 폴더와 파일 이름만 복제하고 파일 내용은 복제하지 않음

디렉터리 뼈대 복제 - 폴더와 파일 이름만 복제하고 파일 내용은 복제하지 않음

폴더와 모든 하위 폴더를 복제하고 싶지만 이 디렉터리에 있는 파일의 내용은 복제하고 싶지 않습니다.

복제하려는 폴더가 다음과 같다고 가정해 보겠습니다.

Folder0
     Folder00
          File000.x      1GB
          File001.x      500MB
     Folder01
          File010.x      600MB

다음과 같은 복제본을 만들고 싶습니다.

Folder0
     Folder00
          File000.x      1KB
          File001.x      1KB
     Folder01
          File010.x      1KB

이 문제에 대해 어떻게 조언하시겠습니까?

또는 먼저 폴더의 일반 복제본을 만든 다음 각 파일의 내용을 정리할 수 있습니다.

답변1

다음을 사용하여 찾을 수 있습니다.

find src/ -type d -exec mkdir -p dest/{} \; \
       -o -type f -exec touch dest/{} \;

-d( )에서 디렉토리 ( )를 찾아 아래에 src/생성 ( mkdir -p) dest/하거나 ( ) 파일 ( )과 에서 -o파일을 찾습니다 .-ftouchdest/

결과는 다음과 같습니다.

dest/src/<file-structre>

mv이 문제를 해결하기 위해 창의적으로 사용할 수 있습니다 .


rsync를 사용하여 다른 (부분) 솔루션을 얻을 수 있습니다.

rsync -a --filter="-! */" sorce_dir/ target_dir/

여기서 비결은 디렉터리( ) 가 아닌( ) 모든 것을 --filter=RULE제외( )하는 옵션 입니다.-!*/

관련 정보