🧩 조건문
1. if, elif, else
#!/bin/bash
echo "숫자를 입력하세요:"
read num
if [ $num -gt 10 ]; then
echo "입력한 숫자가 10보다 큽니다."
elif [ $num -eq 10 ]; then
echo "입력한 숫자가 10입니다."
else
echo "입력한 숫자가 10보다 작습니다."
fi
✅ [ 조건식 ] 부분은 꼭 공백으로 감싸야 한다. ([1 -eq 1] ← ❌)
자주 쓰이는 조건 연산자들:
- 정수 비교: -eq, -ne, -lt, -le, -gt, -ge
- 문자열 비교: =, !=, -z, -n
- 파일 존재 여부: -e, -f, -d
2. if에서 파일 조건 체크
if [ -f "./hello.txt" ]; then
echo "hello.txt 파일이 존재합니다."
else
echo "파일이 없습니다."
fi
3. case구문 : 선택지를 나눌 수 있음
#!/bin/bash
echo "메뉴를 선택하세요 (start/stop/restart):"
read action
case $action in
start)
echo "서비스를 시작합니다."
;;
stop)
echo "서비스를 중지합니다."
;;
restart)
echo "서비스를 재시작합니다."
;;
*)
echo "잘못된 명령입니다."
;;
esac
✅ case 문은 ;;으로 각 분기 종료를 꼭 해줘야 한다.
🔁 반복문
1. for문 :리스트나 범위를 반복할 때
for i in 1 2 3 4 5
do
echo "반복 횟수: $i"
done
혹은 범위를 직접 생성할 수도 있다.
for i in {1..5}
do
echo "$i 번째 줄"
done
fruits=("apple" "banana" "cherry")
for fruit in "${fruits[@]}"
do
echo "과일: $fruit"
done
2. while문 : 조건이 참일 동안 반복
count=1
while [ $count -le 5 ]
do
echo "$count 번째 반복입니다."
((count++))
done
count++ 는 Bash에서 C처럼숫자를 증가시킬 때 사용하는 문법이다.
3. until문 : 조건이 거짓일 동안 반복
x=0
until [ $x -ge 5 ]
do
echo "x는 $x 입니다."
((x++))
done
while과 반대라고 생각하면 된다. 조건이 거짓일 때 반복한다.
4. 반복제어 : break, continue
for i in {1..10}
do
if [ $i -eq 5 ]; then
echo "5에서 반복 중단"
break
fi
echo "i: $i"
done
for i in {1..5}
do
if [ $i -eq 3 ]; then
continue
fi
echo "i: $i"
done
- break: 반복문 즉시 종료
- continue: 해당 반복을 건너뛰고 다음 반복으로 진행
** 디렉토리 안 모든 .txt 파일 이름 앞에 날짜 붙이기
#!/bin/bash
today=$(date +%Y%m%d)
for file in *.txt
do
mv "$file" "${today}_$file"
done'Linux' 카테고리의 다른 글
| 스크립트 분할 관리 (2) | 2025.07.14 |
|---|---|
| Bash 함수(function) (0) | 2025.07.13 |
| Bash 변수와 배열의 기초 (1) | 2025.07.11 |
| Linux file system 명령어 실습 (5) | 2025.07.10 |
| Package Manager (2) | 2025.07.09 |