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

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



답변

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

-n행 번호를 출력되고는 >출력 파일에 그렙-결과를 리디렉션합니다.

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


답변

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

grep ... > output.txt

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


답변