Shell Script도 일반 프로그래밍 언어와 마찬가지로 다양한 연산자를 지원합니다.
주로 사용하는 연사자는 아래와 같이 구분할 수 있습니다.
- Arithmetic Operators
- Relational Operators
- Boolean Operators
- File Test Operators
산술 연산자(Arithmetic Operators)
일반적인 산술 연산과 동일하지만 사용법은 조금 다릅니다.
연산자 | 설명 |
+ | 두 값을 더한다. |
- | 왼쪽값에서 오른쪽 값을 뺀다. |
* | 두 값을 곱한다. |
/ | 나누기 |
% | 나머지(모듈러) |
<예시>
bash는 기본적으로 산술 연산자를 바로 사용할 수 없습니다. 산술 연산을 위해서는 아래의 예와 같이 expr을 사용하거나 변수 처리가 필요합니다.
#!/bin/bash x=10 y=20 z=`expr $x + $y` w=$((x+y)) echo "z: $z" echo "w: $w" |
실행 결과
z는 expr을 사용한 결과이고 w는 변수 처리한 경우입니다.
z: 30 w: 30 |
비교 연산자(Relational Operators)
아래 연산자는 숫자 값의 경우에 사용합니다.
연산자 | 설명 |
-eq | 두 값이 같으면 true, 다르면 false |
-ne | 두 값이 같으면 false, 다르면 true |
-gt | 값이 초과하면 true |
-lt | 값이 미만이면 true |
-ge | 값이 이상이면 true |
-le | 값이 이하이면 true |
== | 값이 같으면 true |
문자열인 경우에는 아래의 연산자를 사용합니다.
연산자 | 설명 |
= | 같으면 true |
!= | 다르면 true |
-z | length가 zero이면 true, 즉 null인 경우 |
-n | lenght가 0이 아니면 true |
논리 연산자(Boolean Operators)
true, false에 관한 연산자입니다.
연산자 | 설명 |
-a | && 로 둘다 true면 true |
-o | || 로 둘중 하나만 true면 true |
! | true, false의 반대값 |
File 연산자
file 관련 연산자 중 자주 사용하는 연산자들입니다.
shell script를 작성할 때 파일을 다루는 경우가 많기 때문에 잘 알아둘 필요가 있습니다.
연산자 | 설명 |
-e | file이 존재하면 true |
-d | directory면 true |
-s | file sizer가 0보다 크면 true |
'Linux' 카테고리의 다른 글
Shell Script: if 조건문 (0) | 2021.03.03 |
---|---|
scponly 설정하기 (0) | 2021.02.25 |
PC에서 VirtualBox Ubuntu와 통신하기 (0) | 2021.02.09 |
VirtualBox Ubuntu 20.04 해상도 설정 (0) | 2021.02.07 |
Shell Script - 변수 (0) | 2021.02.06 |