티스토리 뷰

Backend/Server

[Linux] grep

out of coding 2018. 1. 7. 11:16

리눅스 계열에서 많이 사용하는 grep 명령어에 대해서 적어볼까 합니다.


이름이 왜 이런가 싶어서 저도 찾아보던중 내용을 알게 되었는데요.

https://ko.wikipedia.org/wiki/Grep 에서 내용을 확인해 보면,



뭐 그렇다고 합니다. ㅎㅎㅎ


이전에 사용하는 방법에 대해서는 적어둔거 같아서, 옵션에 대해서 적으려고 합니다.


많은 옵션들이 존재를 하고 개인적으로 공부를 하고 있는 터라 저도 잘 모르기 때문에 괜찮은 정보인것 같아서 글을 가져왔습니다.


나중에는 제가 사용하던 범위에서 설명을 하면서 글을 하나 적어보려고 합니다.


정규 표현식 (Regexp selection and interpretation) : 패턴 지정시 사용되는 정규 표현식은 작은 따옴표('')로 묵어서 표현.


  -E, --extended-regexp

  PATTERN을 정규 표현식으로 확장한다.


  -F, --fixed-strings

  PATTERN을 분리된 문자열로 설정한다.


  -G, --basic-regexp      

  이 PATTERN은 기본 정규식이다.


  -P, --perl-regexp

  이 PATTERN은 perl 정규식이다.


  -e, --regexp=PATTERN

  다음 PATTERN을 정규식으로 사용한다.


  -f, --file=FILE

  파일로부터 패턴을 포함시킨다.


  -i, --ignore-case

  다음에 오는 문자열은 제외한다.


  -w, --word-regexp

  독립적으로 해당 문자열과 일치하는 줄을 찾는다.


  -x, --line-regexp

  해당 라인과 일치하는 문자열만 찾는다.


  -z, --null-data  

  데이터가 Null일 경우 newline을 하지 않는다.



기타 기능을 위한 옵션(Miscellaneous) :


  -s, --no-messages

  에러 메시지를 보여주지 않는다.


  -v, --invert-match

  불일치하는 라인을 보여준다.


  -V, --version

  version 정보를 보여준다.


  --help

  help를 보여준다.


  --mmap

  가능한 메모리 앱을 사용한다.



출력을 위한 제어 옵션(Output control) :


  -m, --max-count=NUM

  NUM과 일치되면 종료한다.


  -b, --byte-offset

  해당라인의 offset byte를 함께 출력한다.


  -n, --line-number

  해당 라인 번호를 함께 출력한다.


  -n, --line-buffered

  모든 라인은 버퍼에 저장한다.


  -H, --with-filename

  매치되는 파일명을 출력한다.


  -h, --no-filename

  해당 파일명을 출력하지 않는다.


  -h, --label=LABEL

  표준 입력 파일명을 LABEL로 출력한다.


  -o, --only-matching

  패턴과 매핑되는 라인만 보여준다.


  -q, --quiet, --silent

  모든 출력을 하지 않는다.


  -q, --binary-files=TYPE

  해당 TYPE을 binary-file로 간주한다.


  -a, --text

  -a를 사용하는 --binary files=text 와 같은 역할을 한다.


  -I

  --binary-files=without-match 와 같은 역할을 한다.


  -d, --directories=ACTION  

  디렉토리를 어떻게 제어할 것인지 설정한다. ACTION에는 'read', 'recurse', 'skip'


  -D, --devices=ACTION

  디바이스를 어떻게 제어할 것인지 설정한다. ACTION에는 'read', 'skip'


  -R, -r, --recursive

  --directories=recurse 옵션과 같다.


  -R, -r, --include=PATTERN

  해당 패턴을 포함한다.


  -R, -r, --exclude=PATTERN

  해당 패턴을 스킵한다.


  -R, -r, --exclude-from=FILE

  파일로터 해당 패턴을 스킵한다.


  -L, --files-without-match

  불일치하는 파일명만 출력한다.


  -l, --files-with-matches

  일치하는 파일만 출력한다.


  -c, --count

  파일의 일치하는 라인의 수를 카운트하여 출력한다.


  -Z, --null     

  파일명이 null인 것만 출력한다.



텍스트 제어 옵션(Context control) :


  -B, --before-context=NUM

  context를 읽어 해당 line 전만 출력한다.


  -A, --after-context=NUM 

  해당 라인 후만 출력한다.


  -C, --context=NUM        

  해당 라인만 출력한다.


  -NUM                      

  --context=NUM 과 같다.


  -NUM --color[=WHEN],

  When 해당하는 단어에 표시를 한다. 예를 들만 `always', `never' 또는 `auto'.


  --colour[=WHEN] 

  When 해당하는 단어에 표시를 한다. 예를 들만 `always', `never' 또는 `auto'.


  -U, --binary

  캐리지 리턴을 삭제하지 않는다. (MSDOS)


  -u, --unix-byte-offsets

  캐리지 리턴이 없다면 offsets으로 출력한다. (MSDOS)


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함