grep 결과를 텍스트 파일로 출력하고 더 깨끗한 출력이 필요합니다.


84

Grep 명령을 사용하여 파일 집합에서 검색 문자열을 찾을 때 결과를 텍스트 파일로 덤프하려면 어떻게해야합니까?

또한 각 항목 사이의 줄 바꿈이나 파일 이름 및 검색 결과를 정당화하는 방법과 같이 더 나은 가독성을 위해 더 깨끗한 결과를 제공하는 Grep 명령에 대한 스위치가 있습니까?

예를 들어, 변할 수있는 거리 ...

./file/path: first result
./another/file/path: second result
./a/third/file/path/here: third result

...에

./file/path: first result

./another/file/path: second result

./a/third/file/path/here: third result

14
이 실제 매우 유용한 "진짜 질문이 아님"질문이 몇 년 후 Google에서 상위 검색 결과에 올라간 것을 좋아합니다.
Adrian Carr

답변:


112
grep -n "YOUR SEARCH STRING" * > output-file

-n행 번호를 출력되고는 >출력 파일에 그렙-결과를 리디렉션합니다.
결과를 "정리"하려면 파이프 |를 사용하여 필터링 할 수 있습니다 . 예를 들어 :
grep -n "test" * | grep -v "mytest" > output-file 문자열 "mytest"와 일치하는 줄을 제외하고 "test"문자열이있는 모든 줄과 일치합니다 (즉, switch -v). 결과를 출력 파일로 변환합니다. 이 게시물
에서 몇 가지 좋은 grep-tips를 찾을 수 있습니다.


10
grep은 완료 될 때만 작성합니까, 아니면 내용을 처리 할 때 한 줄씩 작성합니까? 감사!
Crista23 2014

5
@alfasin-단일 '>'가 출력 파일의 결과를 덮어 쓰지 않습니까? 결과를 파일에 추가하기 위해 이중 '>>'를 사용해야하지 않습니까?
GTodorov 2014

3
@GTodorov 예, 사용을 추가하려면 사용>>
Nir Alfasi 2014

12
미래 방문객 @ Crista23의 질문에 대한 대답은 GREP이 완료되면이 기록입니다
HBeel

35

프로그램 출력의 방향 재 지정은 쉘에 의해 수행됩니다.

grep ... > output.txt

grep각 일치 사이에 빈 줄을 추가하는 메커니즘은 없지만 일치하는 줄 주변의 컨텍스트 및 일치 자체의 색상 화와 같은 옵션을 제공합니다. grep(1)세부 사항, 특히 -C--color옵션 은 man 페이지를 참조하십시오 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.