Shell Script - 변수와 산술계산

OS/Shell Script 2016. 4. 25. 11:00

<변수>

1. 쉘에서는 C언어와는 다르게 변수를 사용하기 전에 미리 선언하지 않아도 된다. 변수에 첫 값이 할당되면서 자동으로 생성되기 때문이다.

2. 모든 변수는 문자열로 취급된다. 숫자, 문자 등 모든 값을 넣어줘도 모두 문자열로 취급되기 때문에 주의해야 한다. (특히 숫자가 많이 햇갈림...)

3. 변수 이름은 대소문자를 구분해야한다.

4. 변수를 대입할 때 '=' 좌우에 공백이 있으면 에러난다.

 

<실습>




처음부터 살펴보자.

1. 공백이 있으면 안된다고 했다. test = good에 공백이 있기 때문에 에러난다.

2. 두번째는 저장이 잘 되어서 출력이 이상없이 되었다.

3. 공백문자가 있을때는 " "로 묶어줘야한다. 묶어주지 않아서 에러났다.

4. 공백문자가 있을때 " "로 묶었더니 잘 출력된다.

5. 숫자는 문자열로 저장된다.

 

'$'문자는 환경변수를 출력할 때 사용하는 문자인데, '$'문자도 출력하고 싶을때는 어떻게 할까?

1. ' '작은 따옴표로 묶어준다.

2. '$'문자 앞에 '\'를 붙인다.

 

<실습>



2번째와 3번째행을 보면 $test를 그대로 출력하고 있다. 위에 언급한 룰을 적용시켜 출력해보았다.

 


<산술계산>

숫자도 문자열로 취급되기 때문에 산술연산을 어떻게 해야할까 고민이 된다.

이럴때 사용하는 명령어는 expr이다.

그리고 `(역따옴표)도 같이 사용해주어야 한다.

 

<실습>




첫번째 행은 단순히 문자열로 출력하기 때문에 붙여서 쓴다.

두번째 행은 숫자로 출력하기 위해 모두 각 단어 마다 띄어쓰기를 해준다.

세번째 행은 괄호를 표현하기 위해 \(역슬래쉬)를 사용하며 연산자중에 *를 사용할때도 (특별한 경우임) \(역슬래쉬)를 해준다.

 




'OS > Shell Script' 카테고리의 다른 글

Shell Script - while문  (0) 2016.04.28
Shell Script - case~esac문  (0) 2016.04.27
Shell Script - for문  (0) 2016.04.27
Shell Script - if문, if~else문  (0) 2016.04.26
Shell Script - 기본 작성  (0) 2016.04.25
posted by 경원구