이 ν¬μŠ€νŒ…μ€ 쿠팑 νŒŒνŠΈλ„ˆμŠ€ ν™œλ™μ˜ μΌν™˜μœΌλ‘œ, 이에 λ”°λ₯Έ μΌμ •μ•‘μ˜ 수수료λ₯Ό μ œκ³΅λ°›μ„ 수 μžˆμŠ΅λ‹ˆλ‹€.

λ°˜μ‘ν˜•


좜처 : μœ λ‹‰μŠ€ μ‰˜ 바이블 (μ—˜λ¦¬ 퀴클리 μ§€μŒ)μ—μ„œ 발췌.
3.1 grep λͺ…λ Ήμ–΄

grep : 파일 전체λ₯Ό λ’€μ Έ μ •κ·œν‘œν˜„μ‹μ— λŒ€μ‘ν•˜λŠ” λͺ¨λ“  행듀을 좜λ ₯ν•œλ‹€.
egrep : grep의 ν™•μž₯판으둜, μΆ”κ°€ μ •κ·œν‘œν˜„μ‹ λ©”νƒ€λ¬Έμžλ“€μ„ μ§€μ›ν•œλ‹€.
fgrep : fixed grep μ΄λ‚˜ fast grep으둜 뢈리며, λͺ¨λ“  문자λ₯Ό 문자 κ·Έλž˜λ„ μ·¨κΈ‰ν•œλ‹€. 즉, μ •κ·œν‘œν˜„μ‹μ˜ λ©”νƒ€λ¬Έμžλ„ 일반 문자둜 μ·¨κΈ‰ν•œλ‹€.

3.2 μ •κ·œν‘œν˜„μ‹μ„ μ‚¬μš©ν•˜λŠ” grep의 예제
# grep NW datafile
# grep NW d* (d둜 μ‹œμž‘ν•˜λŠ” λͺ¨λ“  νŒŒμΌμ—μ„œ NWλ₯Ό ν¬ν•¨ν•˜λŠ” λͺ¨λ“  행을 μ°ΎλŠ”λ‹€.)
# grep '^n' datafile (n으둜 μ‹œμž‘ν•˜λŠ” λͺ¨λ“  행을 좜λ ₯ν•œλ‹€.)
# grep '4$' datafile (4둜 λλ‚˜λŠ” λͺ¨λ“  행을 좜λ ₯ν•œλ‹€.)
# grep TB Savage datafile (TB만 인자이고 Savage와 datafile은 파일 이름이닀.)
# grep 'TB Savage' datafile (TB Savageλ₯Ό ν¬ν•¨ν•˜λŠ” λͺ¨λ“  행을 좜λ ₯ν•œλ‹€.)
# grep '5.' datafile (숫자 5, λ§ˆμΉ¨ν‘œ, μž„μ˜μ˜ ν•œ λ¬Έμžκ°€ μˆœμ„œλŒ€λ‘œ λ‚˜νƒ€λ‚˜λŠ” λ¬Έμžμ—΄μ΄ ν¬ν•¨λœ 행을 좜λ ₯ν•œλ‹€.)
# grep '.5' datafile (.5κ°€ λ‚˜μ˜€λŠ” λͺ¨λ“  행을 좜λ ₯ν•œλ‹€.)
# grep '^[we]' datafile (wλ‚˜ e둜 μ‹œμž‘ν•˜λŠ” λͺ¨λ“  행을 좜λ ₯ν•œλ‹€.)
# grep '[^0-9]' datafile (μˆ«μžκ°€ μ•„λ‹Œ 문자λ₯Ό ν•˜λ‚˜λΌλ„ ν¬ν•¨ν•˜λŠ” λͺ¨λ“  행을 좜λ ₯ν•œλ‹€.)
# grep '[A-Z][A-Z] [A-Z]' datafile (λŒ€λ¬Έμž 2κ°œμ™€ 곡백 1개, 그리고 λŒ€λ¬Έμž ν•˜λ‚˜κ°€ 연이어 λ‚˜μ˜€λŠ” λ¬Έμžμ—΄μ΄ ν¬ν•¨λœ 행을 좜λ ₯ν•œλ‹€.)
# grep 'ss* ' datafile (sκ°€ ν•œ 번 λ‚˜μ˜€κ³ , λ‹€μ‹œ sκ°€ 0번 λ˜λŠ” μ—¬λŸ¬λ²ˆ λ‚˜μ˜¨ 후에 곡백이 연이어 λ“±μž₯ν•˜λŠ” λ¬Έμžμ—΄μ„ ν¬ν•¨ν•œ λͺ¨λ“  행을 좜λ ₯ν•œλ‹€.)
# grep '[a-z]{9}' datafile (μ†Œλ¬Έμžκ°€ 9번 이상 λ°˜λ³΅λ˜λŠ” λ¬Έμžμ—΄μ„ ν¬ν•¨ν•˜λŠ” λͺ¨λ“  행을 좜λ ₯ν•œλ‹€.)
# grep '(3).[0-9].*1 *1' datafile (숫자 3,λ§ˆμΉ¨ν‘œ,μž„μ˜μ˜ ν•œ 숫자,μž„μ˜ 개수의 문자,숫자 3(νƒœκ·Έ),μž„μ˜ 개수의 νƒ­ 문자,숫자 3의 μˆœμ„œλ₯Ό κ°–λŠ” λ¬Έμžμ—΄μ΄ ν¬ν•œλœ λͺ¨λ“  행을 좜λ ₯ν•œλ‹€.)
# grep '
(north둜 μ‹œμž‘ν•˜λŠ” 단어가 ν¬ν•¨λœ λͺ¨λ“  행을 좜λ ₯ν•œλ‹€.)
# grep '' datafile (northλΌλŠ” 단어가 ν¬ν•¨λœ λͺ¨λ“  행을 좜λ ₯ν•œλ‹€.)
# grep '<[a-z].*n>' datafile (μ†Œλ¬Έμž ν•˜λ‚˜λ‘œ μ‹œμž‘ν•˜κ³ , μ΄μ–΄μ„œ μž„μ˜ 개수의 μ—¬λŸ¬ λ¬Έμžκ°€ λ‚˜μ˜€λ©°, n으둜 λλ‚˜λŠ” 단어가 ν¬ν•¨λœ λͺ¨λ“  행을 좜λ ₯ν•œλ‹€. μ—¬κΈ°μ„œ .*λŠ” 곡백을 ν¬ν•¨ν•œ μž„μ˜μ˜ λ¬Έμžλ“€μ„ μ˜λ―Έν•œλ‹€.)

3.3 grep에 μ˜΅μ…˜ μ‚¬μš©
# grep -n '^south' datafile (ν–‰λ²ˆν˜Έλ₯Ό ν•¨κ»˜ 좜λ ₯ν•œλ‹€.)
# grep -i 'pat' datafile (λŒ€μ†Œλ¬Έμžλ₯Ό κ΅¬λ³„ν•˜μ§€ μ•Šκ²Œ ν•œλ‹€.)
# grep -v 'Suan Chin' datafile (λ¬Έμžμ—΄ Suan Chin이 ν¬ν•¨λ˜μ§€ μ•Šμ€ λͺ¨λ“  행을 좜λ ₯ν•˜κ²Œ ν•œλ‹€. 이 μ˜΅μ…˜μ€ μž…λ ₯ νŒŒμΌμ—μ„œ νŠΉμ • λ‚΄μš©μ˜ μž…λ ₯을 μ‚­μ œν•˜λŠ”λ° 쓰인닀.
# grep -v 'Suan Chin' datafile > black
# mv black datafile
# grep -l 'SE' * (νŒ¨ν„΄μ΄ 찾아진 파일의 ν–‰ 번호 λŒ€μ‹  단지 νŒŒμΌμ΄λ¦„λ§Œ 좜λ ₯ν•œλ‹€.)
# grep -w 'north' datafile (νŒ¨ν„΄μ΄ λ‹€λ₯Έ λ‹¨μ–΄μ˜ 일뢀가 μ•„λ‹Œ ν•˜λ‚˜μ˜ 단어가 λ˜λŠ” 경우만 μ°ΎλŠ”λ‹€. northwestλ‚˜ northeast λ“±μ˜ 단어가 μ•„λ‹ˆλΌ, northλΌλŠ” 단어가 ν¬ν•¨λœ ν–‰λ§Œ 좜λ ₯ν•œλ‹€.)
# grep -i "$LOGNAME" datafile (ν™˜κ²½λ³€μˆ˜μΈ LOGNAME의 값을 가진 λͺ¨λ“  행을 좜λ ₯ν•œλ‹€. λ³€μˆ˜κ°€ ν°λ”°μ˜΄ν‘œλ‘œ λ‘˜λŸ¬μ‹Έμ—¬ μžˆλŠ” 경우, μ‰˜μ€ λ³€μˆ˜μ˜ κ°’μœΌλ‘œ μΉ˜ν™˜ν•œλ‹€. μž‘μ€λ”°μ˜΄ν‘œλ‘œ λ‘˜λŸ¬μ‹Έμ—¬ 있으면 λ³€μˆ˜ μΉ˜ν™˜μ΄ μΌμ–΄λ‚˜μ§€ μ•Šκ³  κ·Έλƒ₯ $LOGNAME μ΄λΌλŠ” 문자둜 좜λ ₯λœλ‹€.)

3.4 egrep
egrep(extended grep) : grepμ—μ„œ μ œκ³΅ν•˜μ§€ μ•ŠλŠ” ν™•μž₯된 μ •κ·œν‘œν˜„μ‹ λ©”νƒ€λ¬Έμžλ₯Ό 지원  ν•œλ‹€. grep와 λ™μΌν•œ λͺ…λ Ήν–‰ μ˜΅μ…˜μ„ μ§€μ›ν•œλ‹€.

3.4.1 egrep 예제
# egrep 'NW|EA' datafile (NWλ‚˜ EAκ°€ ν¬ν•¨λœ 행을 좜λ ₯ν•œλ‹€.)
# egrep '3+' datafile (숫자 3이 ν•œ 번 이상 λ“±μž₯ν•˜λŠ” 행을 좜λ ₯ν•œλ‹€.)
# egrep '2.?[0-9]' datafile (숫자 2 λ‹€μŒμ— λ§ˆμΉ¨ν‘œκ°€ μ—†κ±°λ‚˜ ν•œ 번 λ‚˜μ˜€κ³ , λ‹€μ‹œ μˆ«μžκ°€ μ˜€λŠ” 행을 좜λ ₯ν•œλ‹€.)
# egrep ' (no)+' datafile (νŒ¨ν„΄ noκ°€ ν•œ 번 이상 μ—°μ†ν•΄μ„œ λ‚˜μ˜€λŠ” 행을 좜λ ₯ν•œλ‹€.)
# egrep 'S(h|u)' datafile (문자 S λ‹€μŒμ— hλ‚˜ uκ°€ λ‚˜μ˜€λŠ” 행을 좜λ ₯ν•œλ‹€.)
# egrep 'Sh|u' datafile (νŒ¨ν„΄ Shλ‚˜ uλ₯Ό ν¬ν•¨ν•œ 행을 좜λ ₯ν•œλ‹€.)

3.5 κ³ μ • grep κ³Ό λΉ λ₯Έ grep
fgrep : grep λͺ…령어와 λ™μΌν•˜κ²Œ λ™μž‘ν•œλ‹€. λ‹€λ§Œ μ •κ·œν‘œν˜„μ‹ λ©”νƒ€λ¬Έμžλ“€μ„ νŠΉλ³„ν•˜κ²Œ μ·¨κΈ‰ν•˜μ§€ μ•ŠλŠ”λ‹€.
# fgrep '[A-Z]****[0-9]..$5.00' file ([A-Z]****[0-9]..$5.00 이 ν¬ν•¨λœ 행을 좜λ ₯ν•œλ‹€. λͺ¨λ“  λ¬Έμžλ“€μ„ 문자 자체둜만 μ·¨κΈ‰ν•œλ‹€.)

λ°˜μ‘ν˜•

+ Recent posts