티스토리 뷰
이번 글에서는 연산자, 조건 및 반복에 대해서 살펴보는 글을 적어보려 합니다. 이전 글은 바로 아래에 링크로 걸어두겠으니 필요하신 분들은 확인해보시면 좋을 것 같습니다~
1. 오퍼레이터 (연산자)
기본적으로 연산자를 표현하는 방법은 expr ${숫자} ${연산자} ${숫자} 로 표현하게 되고 ${연산자}에 아래 표의 연산자 기호를 넣어주면 됩니다.
연산자 기호 | 의미 | 예시 | 결과 |
+ | 더하기 | expr 10 + 20 | 30 |
- | 빼기 | expr 30 - 10 | 20 |
* | 곱 | expr 10 * 3 | 30 |
/ | 나눔 | expr 30 / 5 | 6 |
% | 나머지 | 28 % 3 | 1 |
= | 저장 (set) | a = 4 | 4 |
== | 동등 | 3 == 3 | true |
!= | 차이 | 4 != 4 | false |
아래는 문자열로 된 비교 연산자 입니다.
비교 연산자 | 의미 | 예시 | 결과 |
-eq | 동등 | ["$a" -eq "abc"] | abc와 같으면 true |
-ne | 다름 | ["$a" -ne "bcd"] | bcd와 같지 않으면 true |
-gt | 보다 큼 | ["$a" -gt 30] | 30 초과이면 true |
-lt | 보다 작음 | ["$a" -lt 50] | 50 미만이면 true |
-ge | 보다 크거나 같음 | ["$a" -ge 40] | 40 이상이면 true |
-le | 보다 작거나 같음 | ["$a" -le 100] | 100보다 작으면 true |
! | 부정 | [ ! "$a" -gt 40 ] | 40 초과이면 false |
-o | 양쪽 다 (OR과 같음) | ["$a" -ge 30 -o "$a" -lt 10 ] | 30 이상이거나 10미만이면 true |
-a | 둘 다 모두 (AND와 같음) | ["$a" -gt 15 -a "$a" -le 30] | 15 초과이고 30 이하일 때 true |
-z | 빈 문자열 체크 | [ -z "" ] | true |
-n | 빈 문자열이 아님 체크 | [ -n "" ] | false |
2. 조건문(if)
이제 if else 문법을 알아보고자 합니다. 기본적인 조건문의 사용법은 if [condition] then $command fi 입니다.
if [ -z "$a" ] then
echo "variable a is empty"
fi
그럼 또 다른 조건인 else if에 대해서 알아보겠습니다. elif 로 사용하며 사용법은 아래와 같습니다.
if [ -z "$a" ] then
echo "variable a is empty"
elif ["$a" -eq "test"] then
echo "variable a is set test"
fi
마지막으로 else 문은 조건이 없이 그대로 사용합니다.
if [ -z "$a" ] then
echo "variable a is empty"
elif ["$a" -eq "test"] then
echo "variable a is set test"
else
echo "variable a is $a"
fi
3. 조건문(switch)
switch 문도 존재합니다. 기본적인 작성법은 case $var in [condition]) command ;; esac 입니다.
#!/bin/sh
case "$var" in
"") echo "var is null"
;;
"abc") echo "var is abc"
;;
"string") echo "var is string"
;;
esac
4. 반복문 (while)
while 반복문은 조건이 끝나는 시점에 종료되는 것은 Java와 같습니다.
#!/bin/sh
a=0
while [$a -lt 10]
do
echo $a
a=`expr $a + 1`
done
결과로는 0~9까지 나온 뒤 종료됩니다.
5. 반복문 (until)
특이하게도 until 문이라는 것이 존재합니다. while 문과는 다르게 반대 조건이 성립될 때까지 수행됩니다.
#!/bin/sh
a=0
until [ $a -ge 5]
do
echo $a
a=`expr $a + 1`
done
결과로는 0~4까지 나온 뒤 종료됩니다.
6. 반복문 (foreach)
foreach 반복문의 기본 작성법은 for $var in [$range] do command done의 순서로 작성됩니다.
#!/bin/sh
for var in 0 1 2 3 4
do
echo $var
done
결과로는 0~4까지 출력됩니다. 위와 같은 문법은 아래와 같습니다.
#!/bin/sh
for var in {0..4}
do
echo $var
done
오늘은 이렇게 스크립트에서 꼭 필수적인 반복문과 조건문, 그리고 어떻게 실행되는지 편의에 맞게 작성이 가능한 방법에 대해 적어보았습니다. 보다 많은 개발자분들이 적극적으로 스크립트를 활용하여 자동화 배포 기술을 더 널리 사용해보시면 좋을 것 같습니다 :)
'Server' 카테고리의 다른 글
[JPA] 도메인 주도 설계에서 QueryDSL QClass 사용법 (0) | 2023.08.08 |
---|---|
[Java] 정적 팩토리 메소드 개념과 잘 써보기 (0) | 2023.07.19 |
[Docker] Mysql 설치 및 설정하기 (2) | 2023.07.19 |
[Shell Script] 1탄 - 기본 설정과 명령어에 대해 알아보기 (0) | 2023.06.12 |
[Java] LinkedList 와 ArrayList 비교 (0) | 2023.06.06 |
Spring Boot Test 클래스 생성법 (0) | 2023.05.30 |