grep으로 찾은 줄로 시작하는 파일의 모든 줄을 보려면 어떤 명령을 사용해야 합니까?
그래서 tail 같은 것을 상상했는데, grep으로 식별한 줄부터 시작했습니다.
예를 들어, 로그를 보고 있는데 시간이 포함된 지점을 식별할 수 있습니다. 그래서 특정 날짜 시간이 포함된 로그 줄 다음의 모든 로그 줄을 보고 싶습니다.
답변1
이렇게 하면 트릭을 수행할 수 있습니다.
sed -n -e "/pattern/,\$p" filename
답변2
grep의 -A 옵션이 이를 수행합니다. 일반적인 사용법은 상황에 따른 것입니다.뒤쪽에일치, -B는 컨텍스트를 의미합니다.앞으로성냥. -m 옵션은 일치 항목 수를 제한합니다.
grep -A1000000 -m1 <search> <file>
최대 1,000,000줄의 컨텍스트를 출력합니다(이 기능이 작동하려면 이 숫자가 파일의 줄 수보다 큰지 확인하세요. 파일이 1,000,000줄보다 길면 grep이 올바른 도구가 아닐 수 있습니다). 비슷한 방식으로,
grep -B1000000 -m1 <search> <file>
첫 번째 일치까지의 모든 행을 인쇄합니다. (내가 아는 한, 이것은 이러한 옵션을 의도적으로 사용하는 것이 아니라 작동 방식의 자연스러운 부작용입니다. 대안은 grep 이외의 프로그램을 사용하는 것입니다.)