리눅스 Bash에서 brace expansion은 중괄호 {}를 이용해
반복되는 패턴의 문자열을 자동으로 생성하는 기능입니다.
임의의 문자열 생성
$ echo log{1..3}.txt
출력 결과:
log1.txt log2.txt log3.txt
➡️ {1..3} 부분이 1부터 3까지 확장되어
log1.txt, log2.txt, log3.txt 형태로 자동 변환됩니다.
for문에서 활용하기
Brace 확장은 반복문에서도 매우 유용하게 쓰입니다.
# test.sh
for i in {1..3}
do
echo $i
done
실행 결과:
1
2
3
이렇게 단순 반복문도 쉽게 구성할 수 있습니다.
문자열 리스트 확장
숫자뿐 아니라 문자열 리스트도 중괄호로 묶어 확장할 수 있습니다.
#!/bin/bash
for i in log-{daemon,kernel}.txt
do
echo "index $i"
done
출력 결과:
index log-daemon.txt
index log-kernel.txt
➡️ {daemon,kernel} 부분이 확장되어
log-daemon.txt, log-kernel.txt 두 가지 문자열이 생성됩니다.
이 경우 log-(접두사, prefix)와 .txt(접미사, suffix)는 고정된 부분이고, 리스트 내의 값(daemon, kernel)만 바뀌며 문자열이 확장됩니다.
정리하면
| 형태 | 설명 | 예시 | 결과 |
| {1..3} | 숫자 범위 | echo file{1..3} | file1 file2 file3 |
| {A..C} | 문자 범위 | echo {A..C} | A B C |
| {a,b,c} | 문자열 목록 | echo {a,b,c} | a b c |
- Brace Expansion은 반복 문자열을 효율적으로 생성하는 기능
- for 반복문과 함께 사용하면 스크립트 간결화에 효과적
- 숫자, 문자, 문자열 목록 모두 확장 가능
Brace Expansion은 중괄호 {}로 문자열을 자동 확장해주는 Bash의 강력한 기능으로,
스크립트 자동화에 필수적으로 활용됩니다.
'개발 환경 및 프로젝트 관리 > Linux 개념' 카테고리의 다른 글
| 터미널에서 프롬프트란 무엇이고,루트 계정과 일반 계정의 차이는 무엇일까? (0) | 2026.01.06 |
|---|---|
| 터미널 프롬프트에 보이는 사용자 · 호스트 · 경로의 의미 (0) | 2026.01.06 |
| Bash에서의 Quoting — 따옴표 정리 (0) | 2025.10.09 |
| Bash — Associative Array (연관 배열) (0) | 2025.10.09 |
| Bash — Indexed Array 기본 정리 (0) | 2025.10.09 |