사용자 도구

사이트 도구


linux:grep

grep

특정 파일명에서 문자열 찾기

  • grep include file pattern recursive example
    # grep -R --include=GLOB "pattern" /path/to/dir
    grep -R --include="*.txt" "pattern" /path/to/dir
    grep -R --include="*.txt" "foo" ~/projects/
  • xargs 사용
    find . -name "*.java" | xargs grep "Some code to find"
  • findtext
    #!/bin/sh
    # findtext "검색어" "파일명"
    find . -name "$2" | xargs grep -Hni "$1"
    • i : 대소문자 구분안하기
    • H : 파일명 출력
    • n : 줄번호 출력

매칭되는 줄 위아래 보여주기

  • -A [줄수] : 매칭 되는 라인의 아래로 줄 수만큼 더 보여줌
  • -B [줄수] : 매칭 되는 라인의 위로 줄 수만큼 더 보여줌
  • -C [줄수] : -A-B 둘 다 적용

여러 단어 검색

grep 'word1\|word2\|word3' /path/to/file
### Search all text files ###
grep 'word*' *.txt
### Search all python files for 'wordA' or 'wordB' ###
grep 'wordA*'\''wordB' *.py
grep -E 'word1|word2' *.doc
grep -e string1 -e string2 *.pl
egrep "word1|word2" *.c

기타 옵션

  • -l : 매칭되는 문자열이 있는 파일 목록만 보여줌

grep 대체

linux/grep.txt · 마지막으로 수정됨: 2019/05/01 22:29 저자 kwon37xi