Bash 스크립팅 입문
Alex Scriven
Data Scientist
Bash의 기본 IF 문 구조는 다음과 같습니다:
if [ CONDITION ]; then# SOME CODEelse # SOME OTHER CODEfi
두 가지 팁:
];IF 문에서 기본 문자열 비교를 할 수 있습니다:
x="Queen"if [ $x == "King" ]; thenecho "$x is a King!"else echo "$x is not a King!" fi
Queen is not a King!
'같지 않다'는 !=도 사용할 수 있습니다
산술 IF 문은 이중 괄호를 사용할 수 있습니다:
x=10if (($x > 5)); then echo "$x is more than 5!" fi
10 is more than 5!
산술 IF 문은 또한 대괄호와 산술 플래그를 사용할 수 있습니다 (>, <, =, != 대신):
-eq-ne-lt-le-gt-ge이전 예제를 대괄호 표기로 다시 만들면 다음과 같습니다:
x=10
if [ $x -gt 5 ]; then
echo "$x is more than 5!"
fi
10 is more than 5!
Bash에는 다음과 같은 파일 관련 플래그가 있습니다:
-e-s-r-w그 외에도 다양합니다:
조건을 결합(AND)하거나 OR을 사용하려면 다음 기호를 씁니다:
&&||Bash에서는 다음과 같이 조건을 체이닝할 수 있습니다:
x=10
if [ $x -gt 5 ] && [ $x -lt 11 ]; then
echo "$x is more than 5 and less than 11!"
fi
또는 이중 대괄호 표기법을 사용할 수 있습니다:
x=10
if [[ $x -gt 5 && $x -lt 11 ]]; then
echo "$x is more than 5 and less than 11!"
fi
대괄호를 빼고 조건식에 명령줄 프로그램을 직접 사용할 수도 있습니다.
예를 들어, words.txt에 'Hello World!'가 있다면:
if grep -q Hello words.txt; then
echo "Hello is inside!"
fi
Hello is inside!
조건식에서 셸 안의 셸을 호출할 수도 있습니다.
같은 결과가 나오는 이전 예시를 다시 써 보겠습니다.
if $(grep -q Hello words.txt); then
echo "Hello is inside!"
fi
Hello is inside!
Bash 스크립팅 입문