Linux

[Linux Study-12] zip, unzip, tar

zamezzz 2016. 11. 19. 23:42

안녕하세요.


오늘은 압축과 관련된 명령어에 대해서 정리할까합니다.


크게 압축풀기 및 압축하기로 나뉘어지는데요.


그중에 먼저 .zip 파일을 압축하고 해제하는 명령어부터 보겠습니다.


  zip


zip 명령어는 쉽게 느끼시는 것 처럼 압축을 하는 명령어입니다.


윈도우에서는 알집, 빵집, 반디집 등의 소프트웨어로 쉽게할 수 있지만, Linux에서는


이렇게 명령어 하나하나로 해주어야 한답니다.


그렇다면 바로 명령어 사용법에 대해서 알아보겠습니다.


[root@localhost ~]# zip example.zip ./*


위 명령어에 대해서 알아보겠습니다.


example.zip이라는 이름으로 현재 위치의 모든 파일을 압축하겠다는 명령어 입니다.


만약 하위 디렉토리까지 모두 압축하고 싶다면 -r 명령어를 사용해주면 됩니다 ^^


  unzip


unzip 명령어는 반대로 zip파일을 압축 해제하는 명령어입니다.


그렇다면 바로 명령어 사용법에 대해서 알아보겠습니다.


[root@localhost ~]# unzip example.zip


example.zip이라는 압축 파일을 현재 위치에 해제하는 것입니다.


이렇게 하면 해당 압축파일이 모두 풀리게 되는 것이죠.


혹시 특정 위치에 압축을 해제하기 위해서는 2가지 방법이 있습니다.


1. 해당 위치로 zip파일을 copy하여 압축해제하는 방법

2. -d 옵션을 사용하는 방법


-d명령어는 특정 target 디렉토리를 설정하여 그 위치에 압축을 풀게해줍니다.


사용법은 아래와 같아요.


[root@localhost ~]# unzip example.zip -d ./exp_dir


exp_dir폴더에 example.zip파일을 해제하는 명령어입니다.


  tar


tar 명령어는 .tar파일 또는 .tar.gz파일을 압축 및 해제할 때 사용합니다.


tar명령어에는 옵션을 사용하여 이를 결정할 수 있는데요.


먼저 옵션부터 확인해보겠습니다.


-c : 파일을 tar로 압축

-p : 파일 권한 저장

-v : 파일 압축 및 해제 시, 화면에 경과 출력

-f : 파일 이름을 지정

-C : 경로를 지정

-x : tar압축을 품

-z : .tar.gz을 다룸


이렇게 많은 옵션이 있어요.


각 옵션 하나하나 외우는 것도 좋지만, 자주 쓰이는 패턴을 외우는게 도움이 많이 될것입니다.


하나하나 실제 사용법을 보며 익혀보겠습니다.


* tar 압축


[root@localhost ~]# tar -cvf example.tar exp_dir


exp_dir이라는 폴더를 example.tar이라는 파일로 압축하는 명령어입니다.


* tar 해제


[root@localhost ~]# tar -xvf example.tar


example.tar이라는 파일을 압축 해제하는 명령어입니다.


* tar.gz 압축


[root@localhost ~]# tar -zcvf example.tar exp_dir


exp_dir이라는 폴더를 example.tar.gz이라는 파일로 압축하는 명령어입니다.


* tar.gz 해제


[root@localhost ~]# tar -zxvf example.tar.gz


example.tar.gz이라는 파일을 압축 해제하는 명령어입니다.


tar.gz을 위해서는 tar을 위한 명령어 옵션 앞에 z옵션만을 추가해주면 된답니다.


복잡해보이지만, 막상 사용한다면 크게 어렵지 않고 쉽게 쓸수 있어요!


백업할 때도 중요하게 사용되니 익혀두시면 좋을것입니다.


감사합니다.

반응형

'Linux' 카테고리의 다른 글

[Linux Study-14] rm 명령어  (0) 2016.12.15
[Linux Study-13] chown 명령어  (0) 2016.12.04
[Linux Study-11] mv 명령어  (0) 2016.11.08
[Linux Study-10] cp 명령어  (0) 2016.11.02
[Linux Study-9] ps 명령어  (0) 2016.10.30