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 페이지를 참조하십시오 .