리눅스에서 압축 파일을 해제하려면 tar 아니면 unzip 명령어를 쓰게 되는데 압축된 형태별로 조금씩 옵션이 다르다.
.tar 파일 압축 해제
tar 파일은 -xvf 옵션을 주고 압축 해제한다.
[root@localhost tar]# tar -xvf tarFile.tar
- -x : 추출(extract)을 의미한다. 압축 해제 시 필수 옵션이다.
- -v : 압축 해제되는 파일명을 출력한다. 압축이 해제되는 과정을 가시적으로 볼 수 있기 때문에 되도록 같이 쓰는 게 좋다.
- -f : 압축 해제할 파일명 지정을 위해 필수로 넣어줘야 된다.
결론적으로 tar 명령어를 쓸 땐 -xf는 무조건 써야된다.
.tgz 파일 압축 해제
사실 tar는 제대로된 압축 파일은 아니고 .tgz(tar.gz) 형태의 파일이 진짜 압축 파일이다. “쥐집(gzip)”이라고 부르는데 아마 리눅스에서 만나는 압축 파일은 대부분 이 형태일 거다.
[root@localhost tar]# tar -zxvf gzipFIle.tgz
tar 파일 해제하는 옵션에서 -z를 추가한다.
- -z : gzip으로 압축을 해제한다는 의미다.
근데 z 옵션을 안 써도 그냥 알아서 tgz도 풀어주는 버전이 많다.
결론은 tar든 tgz이든
tar -xvf gzipFile.tgz
처럼 풀면 되고 혹시 안 풀리면 z 옵션을 추가해서 풀면 된다.
.zip 파일 압축 해제
윈도우에서 zip으로 묶은 파일을 리눅스에 올려 쓰는 경우도 많기 때문에 zip도 자주 해제한다. tar를 쓰진 않고 unzip이라는 별도 명령어를 쓴다.
[root@localhost tar]# unzip zipFile.zip
tar / tgz 파일 차이
tar는 사실 압축 파일이 아니다. 단순히 파일을 묶어 놓은 아카이브 수준이라고 보면 된다. z 옵션을 주고 풀면 gzip 포멧이 아니라고 한다.
반면 tgz(tar.gzip)은 tar로 묶은 걸 gzip 알고리즘으로 압축한 파일이다. 그래서 tar 명령어에 -z 옵션을 함께서서 gzip으로 압축을 해제한다고 명시하는 것이다.