하루 셸 명령 Liux 텍스트 내용 작업 시리즈-grep 명령 상세 설명

6109 단어 linuxgrep
이 편 부터 텍스트 내용 조작 으로 텍스트 조작 과 구별 된다.
Linux 시스템 에서 grep 명령 은 강력 한 텍스트 검색 도구 입 니 다.정규 표현 식 으로 텍스트 를 검색 하고 일치 하 는 줄 을 인쇄 할 수 있 습 니 다.grep 는 전역 정규 표현 식 버 전 을 나타 내 는 Global Regular Expression Print 라 고 합 니 다.사용 권한 은 모든 사용자 입 니 다.
셸,perl,python 은 텍스트 작업 의 전문가 언어 이 고 앞으로 우리 가 배 울 것 은 셸 의 익살 인 텍스트 작업 입 니 다.다음은 가장 흔히 볼 수 있 는 것 중 하 나 를 언급 합 니 다.
grep
이것 은 텍스트 내용 의 중량급 선수 라 고 할 수 있 으 며,어떤 규격 에 따라 수천 줄 의 텍스트 파일 에서 필요 한 데 이 터 를 찾 을 수 있다.그 는 정규 표현 식 과 마스크 를 받 아들 일 수 있다.
기본 인 스 턴 스:
1.명령 번역 은 주어진 match 를 포함 합 니 다.pattern 의 텍스트 줄,예 를 들 어 grep.txt 에서 PATTERN 을 찾 습 니 다.
grep PATTERN grep.txt
or grep "PATTERN" grep.txt
2.여러 파일 일치
grep PATTERN grep.txt grep1.txt
3.stdin 에서 읽 기
echo Ce "this is a wordnext line" | grep word
print 인쇄:this is a word 워드
4.grep 와 정규 표현 식
grep CE "[a-z]+"
혹은
egrep "[a-z]+"
5.현재 줄 대신 일치 하 는 부분 만 출력
echo this is line. | greip Co CE "[a-z]+\."
출력:line
 
6.인쇄 제외 match 포함pattern 줄 이외 의 모든 줄,사용 가능
grep -v match_pattern file
7.텍스트 나 파일 에 일치 하 는 문자열 을 포함 하 는 글자 수 를 통계 합 니 다(이 면접 에 서 는 자주 묻 습 니 다)
$grep -c "text" filename
그러나 그 가 제시 한 것 은 일치 하 는 횟수 가 아니 라 일치 하 는 횟수 이다.
매 칭 수량 을 집계 하면 아래 의 기술 을 사용 할 수 있 습 니 다.
$echo Ce "1 2 3 4hello5 6"| egrep -o "[0-9]" | wc Cl
인쇄 1 부터 6 까지|stdin 에서 숫자 를 읽 고 줄 을 나 누 어 인쇄|줄 수 를 통계 합 니 다.
8.줄 번호 인쇄
grep "text" -n filename
9.파일 2 개 와 줄 번 호 를 검색 하면 출력 은 파일 이름 을 인쇄 합 니 다.
grep "text"Cn s1.txt s2.txt
10.어떤 파일 에 단어 가 있 는 지 알 고 싶다 면 PATTERN
grep Cl PATTER s1.txt s2.txt
-L 은 일치 하지 않 는 파일 목록 을 되 돌려 줍 니 다.
11.모든 디 렉 터 리 에서 단 어 를 찾 을 수 있 습 니 다.PATTERN 은 그 파일 에 있 습 니 다.
grep PATTERN . -R -n
12 동시에 여러 일치 찾기
echo this is a line of text | grep -e "this" -e "line" -o
인쇄:
this
line
13.적당 한 파일 에서 만 검색
grep "main()" .-r --include *.{c,cpp}
.c 와.cpp 가 끝 난 파일 에서 만 main()을 검색 합 니 다.
14.검색 을 통 해 일부 파일 을 제거 합 니 다.
grep "main()" . -r --exclude "README"
모든 파일 이름 이'README'인 파일 을 제 외 했 습 니 다.
 
15 인쇄 가 이전 이나 그 후의 세 줄 과 일치 합 니 다.
seq 10|grep 5 CA 3 이전
seq 10|grep 6 CB 3 이후
16 인쇄 일치 전후 3 줄 동시 출력
seq 10 | grep 5 CC 3
어디 보 자--help

: grep [ ]... PATTERN [FILE]...
FILE PATTERN。
PATTERN ( BRE)。
: grep -i 'hello world' menu.h main.c

:
  -E, --extended-regexp     PATTERN ( ERE)
  -F, --fixed-strings       PATTERN 。
  -G, --basic-regexp        PATTERN ( BRE)
  -P, --perl-regexp         PATTERN Perl
  -e, --regexp=PATTERN      PATTERN
  -f, --file=FILE           FILE PATTERN
  -i, --ignore-case        
  -w, --word-regexp         PATTERN
  -x, --line-regexp         PATTERN
  -z, --null-data           0 ,

:
  -s, --no-messages        
  -v, --invert-match       
  -V, --version            
      --help               
      --mmap               

Output control:
  -m, --max-count=NUM       stop after NUM matches
  -b, --byte-offset         print the byte offset with output lines
  -n, --line-number         print line number with output lines
      --line-buffered       flush output on every line
  -H, --with-filename       print the file name for each match
  -h, --no-filename         suppress the file name prefix on output
      --label=LABEL         use LABEL as the standard input file name prefix
  -o, --only-matching       PATTERN
  -q, --quiet, --silent    
      --binary-files=TYPE   TYPE ;
                            TYPE `binary', `text', `without-match'
  -a, --text                --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
      --include=FILE_PATTERN  FILE_PATTERN
      --exclude=FILE_PATTERN  FILE_PATTERN
      --exclude-from=FILE   FILE
      --exclude-dir=PATTERN  PATTERN 。
  -L, --files-without-match  FILEs
  -l, --files-with-matches  FILES
  -c, --count               FILE
  -T, --initial-tab         tabs ( )
  -Z, --null                FILE

:
  -B, --before-context=NUM  NUM
  -A, --after-context=NUM   NUM
  -C, --context=NUM         NUM
  -NUM                      --context=NUM
      --color[=WHEN],
      --colour[=WHEN]       ;
                            WHEN `always', `never' `auto'
  -U, --binary              CR (MSDOS )
  -u, --unix-byte-offsets   CR , (MSDOS )

‘egrep' ‘grep -E'。‘fgrep' ‘grep -F'。
‘egrep' ‘fgrep' 。
FILE , FILE -, 。 FILE
-h 。 , 0, 1;
, -q , 2。
대부분의 기능 은 인 스 턴 스 에 붙 어 있 습 니 다.제 이 블 로그 에 서 는 주로 책 인 을 참고 합 니 다.
더 공부 할 시간 이 넉넉 하 다 고 생각한다 면 이 책 을 직접 구입 하 는 것 도 좋다.

좋은 웹페이지 즐겨찾기