GREP

문학적인유사성·2022년 3월 1일
0

misc.

목록 보기
8/31

grep

  • 기본
$ grep [option] pattern [file]

-i 대소문자 구분없이 패턴 검색
$ grep [option] [-e pattern | -f file ] [file]

-e 여러개 패턴 검색
-f 패턴이 저장되어 있는 파일을 여러개 사용 가능
$ 명령어 | grep [option]  [ pattern | -e pattern ]

파이프 기호 앞의 명령어 결과가 grep의 대상으로 들어감
  • 패턴 문법 관련
    -E, --extended-regexp 확장 정규 표현식에 해당하는 패턴을 검색할 경우 사용
    -F, --fixed-strings 여러줄로 되어있는 문자열 검색
    -G, --basic-regexp 기본 정규 표현식에 해당하는 패턴을 검색할때 사용되는 옵션, 기본값
    -P, --perl-regexp perl방식 정규 표현식
grep에서 정규표현식을 사용할때 중괄호를 사용해야함!!! 이거 자꾸 까먹네..
  • 매칭 제어 문법 관련
    -e, --regexp=pattern 에러 발생한 단서를 찾기위할때, or같은 역할
    -f file, --file=file_name
    -i, --ignore-case
    -v, --invert-match
    -w, --wrod-regexp
    -x, --line-regexp
    -y (== -i)

  • 출력 제어
    -c, --count
    -L, --files-without-match
    -l, --files-with-matches
    -m lines, --max-count=lines 패턴과 일치하는 단어가 포함된 라인을 해당 라인만큼
    -o, --only-matching
    -q, --quiet,--silent
    -s, --no-message

  • 출력 라인 제어 관련
    -b, --byte-offset
    -H, --with-filename
    -h, --no-filename
    --label=LABEL
    -n, --line-number
    -T, --inital-tab
    -u, --unix-byte-offsets ( -b is necessary )
    -Z, --null ( with -l ) --> for문 인자값으로 많이 씀

  • 라인 제어
    -a, --after-context=lines
    -b, --before-context=lines
    -c, --lines, --context=lines
    --group-separator=
    --no-group-separator

  • 파일 및 디렉터리 관련 옵션
    -a, -text (binary file)
    --binary-files=TYPE
    -D ACTION, --devies=READorSKIP
    -d ACTION, --directories=READorSKIP
    --exclude=GLOB
    --exclude-from=FILE
    --exclude-dir=DIR
    -l (= --bnary-files=without-match )
    --include=GLOB
    -r, -recursive
    -R, --dereference-recursive

바이내리 파일을 검색해야될 경우가 있을까?

해당 파일이 대부분 문자열로 인코딩 된 파일이지만 특정 라인 때문에 data file로 인식될 수가 있고, 이 경우 grep은 이를 binary 파일로 간주하게 된다. 그렇다고 합니다..
https://devpouch.tistory.com/158

  • 기타
    --line-buffered
    -U, --binary,
    -z, --null-data

`

profile
Are you nervous? Don't be

0개의 댓글