여러분, 입력된 텍스트 중 특정 부분만 강조 표시하는 명령어가 있는지 궁금합니다 grep
.
예를 들어 입력 텍스트가 다음과 같다고 가정합니다.
foo bar
gaz das
xar
grep "bar\|gaz" input
bar
강조 표시된 처음 두 줄은 인쇄되지만 gaz
표시되지는 않습니다 xar
.
매개변수에 대해 큰 상수를 간단히 설정할 수 있다는 것을 알고 있으므로 -C
"언제나" 컨텍스트를 표시하세요(예: ). grep -C1000 "bar\|gaz" input
하지만 이것이 작동하는지 아니면 더 나은 도구가 있는지 잘 모르겠습니다.
답변1
사용:
egrep --color 'pattern|$' file
또는 grep을 사용하려는 경우
grep --color -E 'pattern|$' file
"pattern|$"는 검색 중인 패턴과 일치하는 줄뿐만 아니라 끝이 끝나는 줄(예: 모든 줄)도 일치시킵니다. 줄의 끝은 실제로 문자가 아니기 때문에 출력의 색상 부분은 단지 패턴일 뿐입니다.