2014-06-15 2 views
0

grep (Mac OS X Mavericks) 예제를 이해하는 데 정중하게 도움을 청합니다. 그렙에패턴 파일을 사용하여 grep의 출력을 이해하는 데 도움이 필요합니다.

파일 : 2c2d2rh

고양이 개 쥐
고양이 개 쥐

패턴 파일 : 1c1d1rv

고양이

$ GREP -f1c1d1rv 2c2d2rh은 굵은 글꼴 = 자동 --color 시뮬레이션

고양이 개 쥐
고양이 개 쥐

을 생산하고 있습니다.

위한 grep 매뉴얼 페이지 -f 옵션은 파일에서 패턴을 획득 한 줄에 하나씩, 그래서

고양이 개 쥐
고양이 개 쥐
고양이 쥐를 기대하고 있습니다 말한다
고양이
고양이 개
고양이 개

여기서 굵은 글씨는 논리와 일치한다는 것을 나타냅니다. 1c1d1rv에서 grep을 읽고 'cat'을 읽고 2c2d2rh의 'cat'줄을 맞추고 'dog'와 'rat'로 이동해야합니까? grep이이 예에서 6 개가 아닌 2 개의 출력 라인을 생성하는 이유를 이해할 수 없으며 설명에 대해 매우 감사하게 생각합니다. 그렙 설명서에서

Xiexie,
다이 Deqi

답변

0

:

-f 파일, --file =이 읽기 하나 이상의 줄 바꿈 파일은 파일에서 패턴을 분리. 빈 패턴 라인 은 모든 입력 라인과 일치합니다. 개행은 패턴의 일부로 간주되지 않습니다. 파일이 비어 있으면 아무것도 일치하지 않습니다.

첫 번째 문장은 GREP이 모든 파일의 패턴을 찾고, 각 행의 첫 경기를 검색하고 나머지는 무시 GREP의 "정상적인"행동과는 달리 (마다 일치를 강조한다는 것을 의미).

+0

파일의 패턴을 읽고'-e pat'을 사용하여 추가하는 것의 차이점은'-f' 출력을'grep -e cat -e dog -e rat'과 비교하는 것입니다. – Thor

+0

@ Thor 맞아요, 아이디어는 패턴의 각 하나에 대해 개별적으로 비교하고 첫 번째 일치 항목이 발견 될 때 "구제"하지 않는 것입니다. – alfasin

+0

@aflasin (및 Thor). 설명이 도움이되었습니다. 둘 다 감사합니다! – user3449983

관련 문제