시스템의 환경변수 또는 입력 내용을 화면에 출력한다.

사용법 : echo [-ne] [문자열], echo {--help,--version} 
-n : 마지막에 개행 (newline : 화면상에서 커서를 한 줄 아래로 내리도록 하는 코드로서, 아스키 문자 셋에서 10진수로 "10"에 해당하는 값을 갖는다) 문자를 출력하지 않는다. 
-e : 문자열에서 백슬래쉬(\)와 조합되는 이스케이프 문자(escape sequence : 프린터나 모니터의 화면 속성 등을 제어하기 위해 장치에 보내는 특수 문자열을 의마하는데, 그 중에서도 특히 이스케이프 문자로 시작되는 기계 명령을 말한다)을 인용부호(")로 묶어 문자를 인식하도록 한다. 아래는 사용 가능한 것들이다. 
-------------------------------------------------------- 
\a 경고음 (벨) 
\b 백스페이스 
\c 마지막 개행 문자를 사용하지 않는다. 
\f 폼 피드(form feed : 프린터에서 용지 바꿈) 
\n 개행 문자 
\r 캐리지 리턴 (carriage return : 커서를 그 줄의 맨 앞으로 옮기는데 사용되는 특수한 코드이다. 아스키 문자 셋에서, CR은 십진수 "13"에 해당되는 값이다.) 
\t 수평 탭 
\v 수직 탭 
\\ 백슬래쉬 
\nnn ASCII 코드가 nnn (8진수)인 문자 
--------------------------------------------------------- 
--help : 표준출력으로 사용법을 출력하고 정장적으로 종료한다. 
--version :  표준출력으로 버전정보를 출력하고 정장적으로 종료한다. 

echo 명령어는 뒤에 적는 문자열을 출력하는 명령어로, 문자열을 출력한 후에는 개행 문자를 덧붙어 출력한다. 또한 셸에서 자체적으로 포함하고 있는 내부 환경변수를 볼 때 주로 사용하게 된다.
먼저, 내부에서 사용하는 환경 변수를 살펴보자.

# set | more 
BASH=/bin/bash 
BASH_ENV=/root/.bashrc 
BASH_VERSINFO=([0]="2" [1]="05a" [2]="0" [3]="1" [4]="release" [5]="i686-pc-linu 
x-gnu") 
BASH_VERSION='2.05a.0(1)-release' 
COLORS=/etc/DIR_COLORS 
COLUMNS=80 
DIRSTACK=() 
EUID=0 
GROUPS=() 
HISTFILE=/root/.bash_history 
HISTFILESIZE=1000 
HISTSIZE=1000 
HOME=/root 
HOSTNAME=web2 
HOSTTYPE=i686 
IFS=$' \t\n' 
INPUTRC=/etc/inputrc 
JLESSCHARSET=ko 
LANG=ko_KR.eucKR 
LESSOPEN='|/usr/bin/lesspipe.sh %s' 
LINES=24 
LOGNAME=root 

echo 명령어로 HOME 환경 변수를 출력해 보자. 환경변수를 출력하려면 $문자를 붙여야한다.

# echo $HOME 
/root 

환경 변수를 보지않고, 자체 문자열을 출력하려면 다음과 같다.

# echo HOME 
HOME 

echo 명령어에서 보여지는 개행 문자를 삭제해 보자.

# echo -n HOME 
HOME# 

echo -e 옵션을 사용하여 이스케이프 문자를 인식할 수도 있다. 이 때에는 시스템에서 경고음을 들을수 있을 것이다.

# echo -e "\a" 

각각의 \t \n \r를 사용할 수도 있다.

# echo -e "test\ttest\ntest\rtest" 
test        test 
test 
# echo "test\ttest\ntest\rtest" 
test\ttest\ntest\rtest 
2005/06/21 20:22 2005/06/21 20:22

트랙백 주소 :: 이 글에는 트랙백을 보낼 수 없습니다