터미널의 정규식 도구
쉘 레벨 텍스트 검색에 표준 도구가 grep. 현대 대체가 ripgrep (rg) — Rust 작성, RE2 급 엔진, 기본 재귀, .gitignore 존중, blazing fast.
grep flavor
POSIX grep 이 메타문자 처리 다른 세 모드:
- BRE (기본):
?,+,{},(),|가 escape 안 하면 LITERAL.grep 'foo\(bar\)' - ERE (
grep -E또는egrep): 현대 문법 — 메타문자가 escape 없이 동작.grep -E 'foo(bar)' - PCRE (
grep -P): 풀 Perl-호환. Lookaround, backreference, named 그룹. 항상 가능 X (grep 빌드 의존).
기본은 -E. PCRE 기능 필요시 -P. 정규식과 그냥 grep 회피 — 함정 너무 많음.
ripgrep — 현대 기본
rg 가 RE2 식 문법 (lookaround X, backreference X, but linear time). 기본 재귀, .gitignore 존중, Unicode 잘 지원, 큰 코드베이스에 grep 보다 극적 빠름.
흔한 플래그:
rg pattern— 현재 디렉토리에 재귀 검색rg -i pattern— case-insensitiverg -n pattern— 줄 번호 표시 (interactive 모드 기본)rg -l pattern— 매칭 있는 파일명만 리스트rg -A 3 pattern— 각 매칭 후 3 줄 컨텍스트rg --pcre2 pattern— PCRE2 활성 (lookaround, backreference)rg -r 'replacement' pattern— 치환 미리보기 (그룹은$1,$2)