본문 바로가기

OS/Ubuntu

[Ubuntu] tar.gz, gzip, kozip 압축 풀기 묶기 등 내용 정리

tar [[-]function][options] filenames...
tar [[-]function][options] -C directory-name...

function : 수행할 작업을 지시하는 단일 명령
option : 처리할 기능
filenames : 풀거나 묶을 파일 리스트(목록)

tar(Type Archiver)
function
c : 묶음
x : 파일 추출(풀기)
d : 파일과 비교
r : 파일의 마지막 부분에 파일 추가
t : 내용 나열
u : 새로운 파일로 업데이트

option
f : 읽거나 기록할 파일을 정의
v : 묶거나 풀고 있는 파일을 보기
z : gzip으로 압축하여 백업


압축하기
# tar cvf file_name.tar *.c
# gzip file_name.tar

kozip의 경우
파일명이 한글이면 압축을 풀었을 때 알수없는 글자로 나온다 ㅜㅜ

sudo apt-get install libarchive-zip-perl
sudo vi /usr/local/bin/kozip

#!/usr/bin/perl
use strict;
use Encode;
use Archive::Zip;
my $zip = Archive::Zip->new();
$zip->read($ARGV[0]) == 0 or
   die "$0: couldn't read $ARGV[0]\n";
foreach my $mref ($zip->members) {
    my $n = decode("cp949",$mref->fileName);
    print "Extracting $n\n";
    $zip->extractMember($mref,$n) == 0 or
   die "$0: couldn't extract $n\n";
}

sudo chmod 755 /usr/local/bin/kozip


그리고 터미널에서

kozip "filename".zip


하면 잘 풀어진다.

 tar 압축하기
#tar cvfz ./farget.tar.gz ./source_path

압축풀기
# gzip -d file_name.tar.gz
# tar -xvf file_name.tar 




ex :
a 디렉토리에 있는 모든 파일들을 a.tar이라는 파일로 묶기
tar cf a.tar a
위에 작업을 할 때 목록을 보기(용량이 크면 시간이 오래 걸려 컴퓨터가 멈춘것으로 오인할 수 있다. v를 덧붙여 view를 본다.)
tar cvf a.tar a
속성까지 볼 때
tar cvvf a.tar a
파일 풀기
tar xvf a.tar
해당 파일의 내용 확인
tar tvf a.tar
한가지 파일만 풀기
tar xvf a.tar a/gg/happy.avi
a.tar에 디렉토리 추가
tar rvf a.tar 디렉토리명
a디렉토리를 abc.tar.gz 압축 파일로 만들기
tar cvzf abc.tar.gz. a
tar --create --gzip --verbose --file=abc.tar.gz a
tar cvf abc.tar a | gzip -9 > abc.tar.gz
abc.tar.gz 파일 압축 해제
tar xvzf abc.tar.gz
tar --extract --gunzip --verbose --file=abc.tar.gz
gunzip -9c abc.tar.gz | tar xvf -