본문 바로가기

IT/리눅스

리눅스 파일 압축 명령어

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
안녕하세요 오늘은 리눅스 파일 압축에 대해 설명해드리겠습니다.

리눅스의 파일 압축은 윈도우즈의 파일 압축과 조금 다른데요. 윈도우즈는 툴을 써서 바로 압축하지만, 리눅스는 묶기와 압축을 따로 따로 진행해야합니다. 


파일들을 묶는 명령어는 tar이 있습니다.


tar [옵션] [만들 파일이름] [묶을 파일이름] [묶을 파일이름2] ...


묶을 파일 이름들은 보통 *.tar로 확장자를 써 알아보기 쉽게 만듭니다. 


 동작

동작 내용 

 tar 파일을 생성할 때 사용 (묶음 파일 생성)  

 묶인 tar 파일을 해제할 때 사용 (묶음 파일 해제)

 묶인 파일을 확인할 때 사용 

 옵션

옵션 내용 

f (필수) 

 사용할 tar 파일을 지정 

 파일을 묶거나 해제할 때 그 과정을 자세하게 출력 

 tar 옵션과 gzip을 함께 사용

 tar 옵션과 bzip2을 함께 사용 



이렇게 보면 뭐가 뭔지 모르실텐데 정리하자면



파일을 묶을 때 - tar cvf [만들 파일 이름] [묶을 파일들]


파일을 풀 때 -  tar xvf [풀 파일 이름]


파일을 볼 때 - tar tvf [볼 파일 이름]


z옵션과 j 옵션은 아래에서 자세하게 말하겠습니다.




파일을 압축할 때 두가지 방식이 있는데 gzip과 bzip2 두 가지로 나누어져 있습니다.


gzip은 표준 압축 방법으로 기본적인 압축 방법입니다. 명령어 사용 방법은 이러합니다.


gzip [옵션] [파일명]



 옵션

동작 내용 

-d 

 압축 해제 

-c

 원본 파일을 그대로 냅두고 압축 

 -n

 1~9 까지 숫자를 지정하며 숫자가 적을수록 압축 속도는 빠르지만 압축률이 낮음 

 -I

 압축 파일의 정보를 나타냄 

-r

 디렉토리를 지정시 디렉토리에 포함된 모든 파일 압축 

-v 

 압축 또는 해제시 자세한 정보 출력


압축을 하게 되면 *.gz 라는 확장자를 가지게 됩니다.



bzip2는 60%~70% 이상의 높은 압축률을 보이고 gzip과 사용 방법도 같지만, 압축 해제 방법은 상당히 느립니다.


또한 사용하게 되면 *.bz2 라는 확장자를 가지게 됩니다. 명령어 사용 방법은 이러합니다.


bzip2 [옵션] [파일명]



옵션 

동작 내용 

-d 

 압축 해제 

-k 

 파일 압축이나 해제할 때 원본파일을 삭제하지 않음 

-v 

 압축 또는 해제시 자세한 정보 출력 

-s 

 속도는 느려지지만 사용 메모리 양을 줄임 

-f 

 압축 또는 해제시 같은 이름의 파일이 있으면 덮어쓰기 




zip은 다른 압축과는 다르게 암호를 설정 가능합니다. 


zip [옵션] [파일명]


옵션

동작 내용 

-r 

 디렉토리를 지정시 디렉토리에 포함된 모든 파일 압축 

 -P

 압축시 암호 지정 가능 




이제 tar 명령어의 옵션 z와 j에 대해 말할 차례입니다.


사용방법은 tar cvfz ~~ ,tar xvfz ~~, tar cvfj ~~, tar xvfj ~~ 처럼 사용하면 됩니다. 위 옵션에 붙이기만 하면 됩니다.


그럼 어떻게 변하게 되느냐? 바로 z 옵션을 사용하면 gzip을 j 옵션을 사용하면 bzip2 압축을 묶거나 풀 때 한번에 가능합니다. 


무슨 소리냐 하면 tar cvfz ~~ 을 사용하면 특정 파일을 묶는 것과 동시에 gzip 압축을 실행하여 압축을 합니다. j 옵션도 마찬가지로 bzip2 압축을 동시에 실행합니다.


그리고 tar xvfz ~~ 를 *.tar.gz 파일에 사용한다면 한번에 압축과 묶음이 풀려 * 파일이 드러나게 됩니다.



부족한 점이 있으면 마음껏 지적해주세요.