아카이브 와 압축

아카이브 : 여러개의 파일이나 디렉터리를 모아서 파일 하나로 만드는 것

압축 : 파일의 크기를 줄이는 것

 

tar 명령어

괄호 확장 명령어 팁!

{시작숫자..끝숫자}

$ touch dir1/file-{1..5}.txt
$ ls dir1
file-1.txt file-2.txt file-3.txt file-4.txt file-5.txt

$ echo {a..e}.txt
a.txt b.txt c.txt d.txt e.txt

$ echo sample.{txt,log,dat}
sample.txt sample.log sample.dat

 

tar 사용방법

$ tar cf <아카이브 파일 이름> <아카이브로 묶을 파일 경로>

 - c : create

 - f : file

 - tar 에서 옵션을 지정할 때에 하이픈(-) 을 붙여도 되고 안 붙여도 된다.

 

아카이브 파일 만들기 ( cf )

$ tar cf dir1.tar dir1

 

아카이브한 파일 내용 확인하기 ( tf )

$ tar tf dir1.tar
dir1/
dir1/file-5.txt
dir1/file-4.txt
dir1/file-3.txt
dir1/file-2.txt
dir1/file-1.txt

 

아카이브 해제하기 ( xf )

$ rm -rf dir1
$ tar xf dir1.tar
$ ls dir1
dir1/file-5.txt
dir1/file-4.txt
dir1/file-3.txt
dir1/file-2.txt
dir1/file-1.txt

 

옵션 v

 

파일 작성시 사용 cvf  : 아카이브 대상이 되는 파일 목록을 출력

$ tar cvf dir1.tar dir1
a dir1
a dir1/file-5.txt
a dir1/file-4.txt
a dir1/file-3.txt
a dir1/file-2.txt
a dir1/file-1.txt

 

파일 내용 확인시 사용 tvf : ls -a 와 같이 파일의 상세 정보 출력

$ tar tvf dir1.tar
drwxr-xr-x  0 joey   staff       0  4 12 15:36 dir1/
-rw-r--r--  0 joey   staff       0  4 12 15:36 dir1/file-5.txt
-rw-r--r--  0 joey   staff       0  4 12 15:36 dir1/file-4.txt
-rw-r--r--  0 joey   staff       0  4 12 15:36 dir1/file-3.txt
-rw-r--r--  0 joey   staff       0  4 12 15:36 dir1/file-2.txt
-rw-r--r--  0 joey   staff       0  4 12 15:36 dir1/file-1.txt

 

※ tar 은 파일의 권한, 소유자, 타임스탬프 같은 파일의 속성을 유지 한채로 아카이브함

                → 슈퍼 사용자 권한으로 백업에 사용 가능

+ Recent posts