4. 변수

변수는 모든 프로그래밍 언어의 가장 기본이 되는 요소이다. "변수" 라고부르고는 있지만, 어떤 데이타를 저장하기 위한 "임시공간" 이라고 말하는게 더욱 정확한 표현일듯 싶다. 인간 두뇌로 하자면, 대뇌피질의 한구역쯤 될까? 쉘에의 변수의 데이타 타입은 string(문자열) 만을 가지며, C 언어와 같은 변수 선언을 필요로 하지 않는다. 이는 perl, python, php 역시 마찬가지 이다. 변수에 값을 넣기 위해서는 다음과 같이 한다.
	varname=value
	
변수의 사용을 위해서는 변수명 앞에 $ 를 붙여주면 된다. 변수에 데이타를 저장하기 위해서는 대입연산자"=" 를 사용한다. 대입연산자와, 피연산자/연산자 사이에는 공백이 존재하면 안된다.
	#!/bin/sh
	# 변수에 값을 할당한다.
	a="hello world"
	# 이제 a라는 변수에 등록된 값을 화면에 출력한다.
	echo "a is : $a"
	
위의 내용으로 파일을 만든다음 저장하고, 실행파일로 만들어서 실행하면 다음과 같은 결과물이 화면에 출력될 것이다.
	[yundream@localhost /home]# ./test.sh
	A is : hello world
	
아래와 같이 프로그램을 만들어 보자
	num=2
	echo "this is the $numnd"
	
우리가 원하는 값은 "this is the 2nd" 이다. 그러나 우리가 원하는 값대신 "this is the " 라는 문자열이 출력된다. 왜냐면 쉘은 "numnd"를 하나의 변수명으로 생각하고 있기 때문이다. 이렬경우애는 아래와 같이 코딩하면 된다.
	num=2
	echo "this is the ${num}nd"
	
위의 프로그램을 실행시키면 우리가 원하는 값인 "this is the 2nd" 라는 출력물을 얻게 된다.