"모르는 부분을 특수문자로 대신 표현해서 패턴 매칭하는 것"
핵심 문자 3개만 기억
* — "뭐든 다 OK" (0글자 이상)
*.txt
✅ hello.txt
✅ a.txt
✅ readme.txt
❌ hello.md ← 확장자가 다름
? — "딱 1글자만 대신" (정확히 1개)
file?.txt
✅ file1.txt
✅ filea.txt
❌ file10.txt ← 2글자라서 안 됨
❌ file.txt ← 0글자라서 안 됨
** — "폴더 경계도 넘어서 다 OK"
**/*.txt
✅ a.txt
✅ src/a.txt
✅ src/utils/a.txt
✅ a/b/c/d/a.txt
* 하나는 같은 폴더 안에서만
** 둘은 하위 폴더까지 전부 파고듦
[abc] / [a-z] — "이 중에 딱 1개"
[CBR]at.txt
✅ Cat.txt
✅ Bat.txt
✅ Rat.txt
❌ Hat.txt ← H는 목록에 없음
❌ CBRat.txt ← 1글자만 대체 가능
[0-9].txt ← 숫자 하나로 시작
[!a-z].txt ← 소문자 제외 (! = NOT)
* vs ** 차이 한눈에
src/
├── index.js
└── utils/
└── helper.js
패턴 매칭 결과
| src/*.js | src/index.js 만 ✅ |
| src/**/*.js | src/index.js + src/utils/helper.js 둘 다 ✅ |
와일드카드 vs 정규식 차이
와일드카드 정규식(Regex)
| 주 용도 | 파일/경로 찾기 | 텍스트 패턴 분석 |
| * 의미 | 뭐든 다 | 앞 글자 0회 이상 반복 |
| 난이도 | 쉬움 | 복잡함 |
| 예시 | *.txt | .*\.txt$ |
헷갈리는 포인트: 정규식의 *는 완전히 다른 의미!
환경별 문법 차이
환경 "뭐든 다" "딱 1글자"
| Linux/Mac 쉘 | * | ? |
| SQL | % | _ |
| Windows CMD | * | ? |
| .gitignore | * / ** | ? |
실전 패턴 모음
*.log # 모든 로그 파일
*.{jpg,png,gif} # 이미지 파일들
**/*.java # 하위 폴더 전체의 .java
src/**/*.ts # src 아래 전체 .ts
file?.txt # file 뒤에 딱 1글자
[0-9]*.txt # 숫자로 시작하는 txt
[!.]* # 숨김 파일(.으로 시작) 제외
!important.log # 이 파일만 예외 처리
'🥕 저장소 (Dev & Tools) > 잡다구리 (ETC)' 카테고리의 다른 글
| [WIN 11] 레지스트리 최적화 (0) | 2026.03.08 |
|---|---|
| [Win] RDP 성능 최적화 (0) | 2026.03.02 |
| CryptoJS AES (0) | 2026.02.24 |
| Proxmark3 × ChameleonUltra (0) | 2026.02.21 |
| 해킹 상황별 도구 및 활용 전략 (0) | 2026.02.21 |