높은 성능의 압축률을 자랑하는 압축 유틸리티이다.

사용법 : bzip2 [-옵션] [파일명...] 
-c --stdout : 파일을 압축 또는 풀어서 표준 출력으로 보낸다. 
-d --decompress : 압축을 푼다. 
-z --compress : 파일을 압축한다. 
-t --test : 지정된 파일의 무결성을 검사하지만, 압축을 풀지는 않는다. 
-f --force : 압축, 해제할 때 같은 이름의 파일이 있을 경우 덮어쓰기 한다. 
-k --keep : 파일을 압축이나 해제 할 때 원본파일을 지우지 않는다. 
-s --small : bzip2가 작업 중 사용하는 메로리의 양을 줄인다. bzip2 작업에 2.5byte 만을 사용한다. 이렇게 작업하게 되면 속도는 2배 이상 더 걸리지만 2.5byte 라는 적은 메모리에서 bzip2를 사용할 수 있다. 
-q --quiet : 경고 메시지가 나오지 않는다. 
-v --verbose : bzip2 작업사항을 자세히 볼수 있다. 
-L --license -V --version : 버전과 라이센스를 보여준다. 
-1 ~ -9 : 압축할때의 블록 크기를 정해 준다. 

bzip2는 Burrows-Wheeler 블록 정렬 테스트 압축 알고리즘과 Huffman 코딩을 사용하여 압축률이 뛰어나다. bzip2는 GNU gzip 과 비슷한 사용법을 갖는다. 압축된 파일은 압축 전의 날짜, 퍼미션, 소유자 등의 속성을 그대로 갖는다. 그러므로 압축된 파일을 풀었을 때에도 원본파일의 속성을 그대로 간직한다.
bzip2의 확장자는 .bz2이다.

# ls 
q-mail.hwp routing 

위 두 파일을 bzip2 명령으로 압축해보겠다.

파일압축

# bzip2 q-mail.hwp routing 
# ls 
q-mail.hwp.bz2 routing.bz2 

파일압축 해제
bzip2 -d 옵션으로 파일을 압축 해제한다.

# bzip2 -d q-mail.hwp.bz2 
# ls 
q-mail.hwp routing.bz2 

bzip -d 옵션은 bunzip2명령과 동일한 명령이다.

# bunzip2 routing.bz2 
# ls 
q-mail.hwp routing 

[관련 명령어]
compress 압축 유틸리티. 확장자 .Z
gzip 표준 GNU/UNIX 압축 유틸리티. 확장자 .gz
2005/06/25 11:39 2005/06/25 11:39
시스템에서 달력의 기능을 하는 명령어

사용법 : cal [옵션] [[month]year] 
-j :율리우스(구태양력)으로 출력. 
-y :현재 년도 모든 달을 모두 보여준다. 
-V :버전 정보를 보여준다. 

사용할 수 있는 년도는 서기 원년에서 9999년까지이다. 9999년 이후의 달력을 볼 수 없는 것은 아쉽지만, 틀림없이 9999년이 오기 전에 9999년 이후의 달력을 볼 수 있도록 수정될 것이라 생각된다. 1999년을 보고자 한다면 cal 99가 아니라, cal 1999라고 입력해야 한다. 아무런 명령행 인자가 없으면 시스템의 현재 달을 보여준다.

# cal 
# cal 8 1973 
# cal 2004 
# cal 2004 | lpr   --프린터로 출력 


[관련 명령어]
date 오늘의 날짜 혹은 지정한 날의 날짜를 주어진 형식대로 출력한다.
2005/06/25 11:36 2005/06/25 11:36
텍스트 파일 내용을 표준 출력으로 보여준다.

사용법 : cat [옵션] [파일]... 
-A, --show-all : -vET 와 같다. 
-b, --number-nonblank : 공백을 제외한 파일 내용의 줄의 맨 앞에 1부터 시작하는 줄 수를 보여준다. 
-e : -vE 와 같다. 
-E, --show-ends : 각 줄의 끝에 $로 끝줄을 나타낸다. 
-n, --number : 모든 줄의 앞에 1부터 시작하는 줄 수를 보여준다. 
-s, --squeeze-blank : 공백의 줄 수를 하나이상 보여주지 않는다. 
-t : -vT 과 같다. 
-T, --show-tabs : 탭 문자를 ^|로 보여준다. 
-v, --show-nonprinting : 개행 문자와 탭 문자를 제외한 ^|와 M 표시를 보여준다. 
--help : 도움말을 보여준다. 
--version : 버전 정보를 보여준다. 

cat은 파일의 내용을 출력하여 보여주는 대표적인 명령어이다. cat은 파일 내용을 한번 보여주기만 할 뿐 많은 줄의 내용은 제대로 살펴 볼 수 없다. 이 때는 보통 more 명령이나 less, tail 명령을 사용하거나, 출력 내용을 파이프를 통해 다른 프로그램과 조합하여 사용해야 할 것이다.
다음의 query 파일을 보자. 한 줄이 길어 한 줄인지 구별이 가지 않는다.

# cat query 
select date_format(uregdate,'%Y%m') date,count(uid) from cst_users u, cst_productregs p, cst_productregdetail d 
where u.uno=p.preguno 
and p.pregno=d.preggno 
group by date 

-n 옵션은 줄 앞에 줄 번호를 붙여 주는 역할을 한다. 이 파일은 총 4줄임을 알 수 있다.

1 select date_format(uregdate,'%Y%m') date,count(uid) from cst_users u, cst_productregs p, cst_productregdetail d 
2 where u.uno=p.preguno 
3 and p.pregno=d.preggno 
4 group by date 

줄 수가 많은 경우 파이프로 more 명령을 실행하여 한 페이지씩 살펴 볼 수 있다. 다음 페이지를 보려면 스페이스 키를 입력하고, 한 줄씩 내려가려면 엔터 키를 입력한다.
물론 more만 실행하더라도 같은 결과를 볼 수는 있다.

# cat /etc/httpd/conf/httpd.conf | more 
# 
# Based upon the NCSA server configuration files originally by Rob McCool. 
# 
# This is the main Apache server configuration file.  It contains the 
# configuration directives that give the server its instructions. 
# See <URL:http://www.apache.org/docs/> for detailed information about 
# the directives. 
# 
# Do NOT simply read the instructions in here without understanding 
# what they do.  They're here only as hints or reminders.  If you are unsure 
# consult the online docs. You have been warned.  
# 
# After this file is processed, the server will look for and process 
# /etc/httpd/conf/srm.conf and then /etc/httpd/conf/access.conf 
# unless you have overridden these with ResourceConfig and/or 
# AccessConfig directives here. 
# 
# The configuration directives are grouped into three basic sections: 
#  1. Directives that control the operation of the Apache server process as a 
#     whole (the 'global environment'). 
#  2. Directives that define the parameters of the 'main' or 'default' server, 
#     which responds to requests that aren't handled by a virtual host. 
--More-- 

마지막으로 cat은, 간단한 라인 편집기의 역할을 할 수 있다. 라인 편집기란 현재 입력 하고 있는 행은 수정할 수 있지만 이미 지나 온 행은 수정할 수 없는 것으로, 지금은 거의 쓰이지 않는 것이지만, 나우누리나 하이텔 등의 PC 통신을 사용하는 사람이라면 한번쯤 사용해 보았을 것이다. 사용 방법은 다음과 같다.

# cat > [파일 이름] 

그러면 실제로 파일을 만들어 저장해 보자. 파일을 다 쓰고 나서는 Ctrl+D를 눌러 cat 명령을 종료한다.

# cat > boa.txt 
You Still my No.1, 
날 차지 말아 줘, 
나의 슬픔 가려 줘, 저 구름 뒤에 
너를 숨겨 빛을 닫아 줘. 
Ctrl+D 

노래 가사를 입력해 보았다. 그러면 제대로 저장이 되었는지, 새로 만들어진 boa.txt 파일을 읽어보자

# cat boa.txt 
You Still my No.1, 
날 차지 말아 줘, 
나의 슬픔 가려 줘, 저 구름 뒤에 
너를 숨겨 빛을 닫아 줘. 

잘 저장된 것을 알 수 있다. 그러나 이 경우에 한 가지 주의할 점이 있다. 다음 내용을 살펴 보자. 다음과 같이 사용하면 100m.txt 파일의 내용을 화면에 출력하는 대신 boa.txt 파일에 입력하여 저장한다.

# cat 100m.txt > bat.txt 
# cat boa.txt 
저기 보이는 노란 찻집 
오늘은 그녀를 세번째 만나는 날 

앞서 작성한 boa.txt의 내용이 사라지고 100m.txt의 내용이 저장되어 있다. 그렇다면 먼저 저장된 내용의 뒤에 새 내용을 저장하려면 어떻게 해야 할까? 이 때에는 > 를 두개 사용하여 문제를 해결할 수 있다.

# cat sarah.txt >> boa.txt 

[관련 명령어]
more 한 페이지씩 파일을 볼 수 있다.
tail 파일의 끝 부분부터 지정한 라인 수만큼 보여준다.
less more와 같은 기능을 하지만, 좀 더 추가적인 기능들이 있다.
2005/06/22 23:58 2005/06/22 23:58