리눅스에서 zip 압축을 풀기 위해서는  (여기에도 작성해두었지만.. http://ngee.tistory.com/215)




1. unzip 패키지 설치


   리눅스에서 zip 압축을 풀기위해서는 unzip 이라는 패키지가 설치되어 있어야 합니다. 

   unzip 패키지가 없으면 apt-get install unzip 을 통해서 설치하시면 됩니다.





2. zip 압축 풀기


예로 happy.zip 이라는 파일이 있다고 가정하면 아래와 같은 명령어로 압축을 풀 수 있습니다.


명령어 : unzip happy.zip 


덧) 2014/11/07)

특정 폴더에 압축 풀고 싶으시죠? 그럼 -d 옵션을 주시면 됩니다. 

예로 happy.zip 을 ./target 이라는 폴더에 압축을 풀고 싶으면


명령어 : unzip happy.zip -d ./target





3. zip 압축하기 


리눅스에서 zip으로 압축하기 위해서는 zip 이라는 명령어를 사용하시면 됩니다.


예를 들어서 현재 폴더에 있는 모든 것을 zip으로 압축하는데, 그 파일명이 test.zip 이라고 가정하면.


명령어 : zip test.zip ./*


라고 하시면 됩니다. zip으로 묶이는 데, 그 파일이름이 test.zip 이라는 것이구요. ./* 는 현재 폴더의 모든 것이라는 뜻이구요.


현재 폴더에 여러 하위 폴더가 있는데, 그것도 다 같이 압축하기 위해서는 -r 이라는 옵션을 주면 되구요.


명령어 : zip -r test.zip ./*  


라고 하시면 되겠죠. 뜻은 test.zip으로 압축하고 현재 폴더의 모든 것과 현재 폴더의 하위 폴더들도 모두 압축해라 입니다.





+++덧 20160206)


zip의 r 옵션을 위와 같이 사용하는 경우에는 별다른 문제가 없지만 스크립트로 사용할 때 문제가 될 수 있다.

상대경로가 아니라 절대경로로 설정하여 압축한 경우에는 압축을 풀었을 때 /var/www/html/fflflflf/flflflf 이런식으로 나올 수 있기 때문이다.

이것은 -j 옵션으로 해결 가능하다. 하지만 -j옵션과 -r 옵션은 같이 사용될 수 없다.


그래서 결론은 스크립트로 사용할 때에는 -r 옵션을 그대로 사용하되 cd로 이동한 다음에 zip으로 압축하면 

하위폴더는 포함하고 경로에 해당하는 모든 폴더를 안봐도 된다.


ex) cd /var/www/html && zip -r test.zip ./*




아래는 리눅스에서 압축과 관련된 내용을 담을 포스팅 모음입니다. 


2014/11/07 - [리눅스/우분투] - 리눅스에서 war 압축풀기


2014/04/04 - [리눅스/우분투] - 리눅스 gz 압축하기, 압축풀기


2014/01/05 - [리눅스/우분투] - 리눅스에서 압축하기, 압축풀기 (tar)


  1. Favicon of https://hdnua.tistory.com BlogIcon 누아니 2015.06.18 12:17 신고

    [Ubuntu zip] 좋은 정보 감사합니다. 덕분에 잘 해결되었네요.

+ Recent posts