-
압축과 아카이빙linux/centOS 2018. 6. 13. 21:59
☆ gzip / gunzip
: gzip 명령어는 파일을 압축할 때 사용한다. gzip 명령어 다음에 파일의 이름을 쓰면 파일이 압축되며, 파일에 확장자(.gz)가 붙게 된다. gzip 명령어는 Lempel-Ziv coding (LZ77)을 사용한다. 압축되기 전의 파일의 속성 정보는 압축이 된 이후에도 유지된다. gzip 명령어로 압축된 파일의 내용은 gzcat 명령어나 gunzip 명령어의 -c 옵션을 사용하여 볼 수 있다. 압축을 해제 할 때는 gzip 명령어 다음에 압축된 파일을 쓰면 된다. 그럼 압축이 해제되며, 파일의 확장자(.gz)가 없어지게 된다.
[명령어의 형식]
(압축) # gzip file1
file1.gz
(확인) # gunzip -c file1.gz (# zcat file1.gz)
(해제) # gunzip file1.gz (# gzip -d file1.gz)
[명령어 옵션]
옵션
설명
-S
기본 생성 파일인 .gz 형태가 아닌 지정한 파일로 생성한다.
-d
압축된 파일의 압축을 해제한다. 이는 uncompress명령과도 같다.
-f
이미 이전에 압축파일이 존재하더라도, 무시하고 압축파일을 생성한다.
-r
지정한 것이 디렉토리라면 하위 디렉토리와 파일까지 모두 압축한다.
-v
압축 통계를 보여준다.
☆ bzip2 / bunzip2
: 높은 성능의 압축률을 자랑하는 유틸리티(Utility) 이다. Burrows-Wheeler 블록 정렬 테스트 압축 알고리즘과 호프만 코딩을 사용하여 파일을 압축한다. bzip2는 tar 아카이브 파일을 압축하게 되면 기존 아카이브 파일이 제거되고, bz2 확장자가 생성된다.
압축된 파일은 압축전의 날짜, 퍼미션, 소유자 등의 속성을 그대로 갖는다.
그러므로 압축된 파일을 풀었을 때에도 원본 파일의 속성을 그대로 간직한다.
[명령어 형식]
(압축) # bzip2 file1
file1.bz2
(확인) # bunzip2 -c file1.bz2 (# bzcat file1.bz2)
(해제) # bunzip2 file1.bz2 (# bzip2 -d file1.bz2)
[명령어 옵션]
옵션
설명
-c
파일을 압축 또는 풀어서 표준 출력으로 보낸다.
-d
압축을 푼다.
-z
파일을 압축한다.
-t
지정된 파일의 무결성을 검사하지만, 압축을 풀지 않는다.
-f
압축, 해제할 때 같은 이름의 파일이 있을 경우 덮어쓰기 한다.
-k
파일을 압축이나 해제할 때 원본파일을 지우지 않는다.
-q
경고 메시지가 나오지 않는다.
-v
bzip2 작업사항을 자세히 볼 수 있다.
-1~-9
압축할 때의 블록 크기를 정해준다.
☆ tar
: tar(tape archive) 명령어는 여러개의 파일이나 디렉토리를 한 개의 묶음파일로 만들 때 사용한다. 또는 Tape 디바이스에 백업할 때 사용한다. tar 명령어는 c, x, v, f 옵션들을 사용할 수 있다. 한 개의 아카이빙 할 때는 c 옵션을 사용하고 f 옵션으로 만들어질 파일의 이름을 지정하면 된다. 아카이빙 파일의 내용을 볼때는 t 옵션을 사용하고 f 옵션으로 아카이빙 파일을 지정한다. 아카이빙 파일을 해제 할 때는 x 옵션을 사용하고 f 옵션으로 아카이빙 파일을 지정하면 된다.
[명령어 형식] tar명령어 사용시 옵션에 -기호 생략가능
# tar cvf <묶음파일명> <파일명1> <파일명2> ... /* c: create, v: verbose, f: file or tape */
# tar tvf <묶음파일명> /* t: content */
# tar xvf <묶음파일명> /* x: extract */
# tar cvf file.tar file1 file2 file3
# tar tvf file.tar
# tar xvf file.tar
# tar cvzf file.tar.gz file1 file2 file3 (# tar cvzf file.tgz file1 file2 file3)
# tar tvzf file.tar.gz
# tar xvzf file.tar.gz (# tar xvf file.tar.gz)
# tar cvjf file.tar.bz2 file1 file2 file3 (# tar cvjf file.tbz file1 file2 file3)
# tar tvjf file.tar.bz2
# tar xvjf file.tar.bz2 (# tar xvf file.tar.bz2)
[명령어 옵션]
옵션
설명
-c
여러 개의 파일을 하나의 파일로 묶을 때
-v
생성과정을 보여 줌
-x
파일의 압축을 해제하고 풀어 낼 때
-r
파일 및 디렉토리 추가
-u
tar 파일과 새로운 디렉토리 내의 파일과 비교하여 최근 파일을 아카이브에 추가
-t
tar 파일의 내용을 확인할 때
-z
gzip과 관련하여 압축이나 해제를 한꺼번에 할 때
-j, -l
bzip2를 이용해서 압축한다.
☆ zip / unzipz
[zip 명령어 형식]
# zip file.zip file1 file2 file3
# unzip -l file.zip
# unzip file.zip
'linux > centOS' 카테고리의 다른 글
shell 특성 2 (0) 2018.06.15 shell 특성 1 (0) 2018.06.14 검색 관련 명령어 (0) 2018.06.13 유용한 명령어 (0) 2018.06.12 vi 편집기 (0) 2018.06.10