02_우분투(Ubuntu)

파일 경로 포함해서 복사하기, 백업하기

tothebest 2024. 5. 6. 23:01
728x90

 

안녕하세요

Ubuntu에서 작업하다 보면 본인이 작업한 내용을 backup 해야 하는 경우가 발생합니다.

경우에 따라서는 작업 폴더 전체를 backup하면 되지만, 작업하는 폴더 자체의 크기가 크고 내가 작업한 양은 적을 때

필요한 작업 파일들만 backup 하면 되겠죠.

backup 할 때 파일 복사를 하는 경우가 많은데요. 이 때의 문제는 파일 경로까지 복사가 쉽지 않다는 겁니다.

backup 할 때, 파일의 경로까지 backup이 가능하다면 훨씬 더 효율적이겠지요.

 

파일 경로까지 backup 하기위해 저는 cp -r --parents 명령을 활용합니다.

cp 명령어는 기본적으로 copy하는 명령어입니다. 옵션을 추가함으로써 다양한 추가 기능을 활용할 수 있죠.

tothebest@ubuntu:~/src_folder$ cp --help
Usage: cp [OPTION]... [-T] SOURCE DEST
  or:  cp [OPTION]... SOURCE... DIRECTORY


         --parents                use full source file name under DIRECTORY
  -R, -r, --recursive          copy directories recursively

 

예를 들어보겠습니다.

왼쪽의 src_folder에는 전체 폴더와 파일이 있다고 가정하고 이 중에서 backup 할 파일은 file2_0.txt, file3_0.txt, file3_1.txt의 세 개 파일입니다.

src_folder dst_folder
 dir1/
    dir2/
      . file2_0.txt  -> backup
      . file2_1.txt
      . dir3
            file3_0.txt -> backup
            file3_1.txt -> backup
            file3_2.txt

dir1/
    dir2/
      . file2_0.txt  -> backup      
      . dir3
            file3_0.txt -> backup
            file3_1.txt -> backup

 

오른쪽의 dst_folder에 원래의 파일과 그 경로를 유지하기 위해서는 아래와 같이 하면 되겠습니다.

cp -r --parents ./dir1/dir2/file2_0.txt          ~/dst_folder/
cp -r --parents ./dir1/dir2/dir3/file3_0.txt  ~/dst_folder/
cp -r --parents ./dir1/dir2/dir3/file3_1.txt  ~/dst_folder/

 

아래는 실행 결과입니다.

의도했던 내용이 그대로 잘 반영되어 있네요.

src_folder dst_folder

 

아주 쉽습니다만 저같은 사람에게는 아주 유용한 팁입니다.

아무쪼록 다른 분들에게도 도움이 되었으면 하네요.

 

감사합니다.

728x90