2012-01-31 4 views
12

필자는 텍스트 파일을 읽고 특정 키워드를 포함하지 않는 모든 줄을 제거한 다음 터미널에서 새 파일로 그 줄을 인쇄하기 위해 터미널에 넣어야하는 명령이 무엇인지 궁금합니다. 예를 들어 키워드는 "system"입니다. 시스템을 포함하는 모든 줄을 새로운 개별 파일로 인쇄 할 수 있기를 원합니다. 감사합니다특정 단어가 들어있는 줄을 찾는 터미널 명령?

답변

18

grep은 (는) 친구입니다.

grep system <filename> > systemlines.out 

남자 GREP 당신은뿐만 아니라 (예 유용한 추가 정보를 얻을 수 있습니다 :

예를 들어, 당신은 할 수있는 줄 번호, 1+ 라인 이전에, 1 개 + 선 후, 부정을 - 즉 모든 grep 등을 포함하지 않는 행 ...)

Windows를 실행하는 경우 cygwin을 설치하거나 grep 용 win32 바이너리를 찾을 수 있습니다.

+0

기본적으로 grep은 대소 문자를 구분합니다. –

+2

당신은 grep -i를 사용하여 대소 문자를 구분하지 않을 수 있지만 그게 필요하다고 생각하지 않습니다. –

-1

그렙 "시스템"파일 이름> 새로운 파일 이름

당신은 그것을 조금 더 영리한 "dysystemic"와 같은 단어 라인을 포함하지 수 있도록 할 수 있습니다,하지만 그것은 시작하기에 좋은 장소입니다. grep 명령 아래

+0

grep의'-w' 옵션은 검색 표현을 "전체 단어", 즉 공백 (라인의 시작과 끝 포함)으로 구분하도록합니다. – ghoti

2

grep -i yourword filename1 > filename2 

with -i for case insensitiveness

without -i for case sensitiveness

방법 그렙 작품을 통해 UR 서버에 배울 UR 문제 해결 다음과 같은 명령을 통해 UR 서버의 매뉴얼 페이지를 참조합니다

man grep 
3
grep '\<system\>' 

단어 시스템을 포함하고 시스템이 부분 문자열이 아닌 행을 검색합니다.

+0

이것은 또한 도움이되었습니다! – willykao

관련 문제