어떻게 Linux 에서 하 이 라이트 키워드 의 tail - f 기능 을 실현 합 니까?

1352 단어 shelltail
회사 내부 의 한 친구 가 메 일 링 리스트 에 올 린 작은 tip 은 매우 재 미 있 습 니 다. 프로그래머 의 '기 음 기법' 류 에 속 합 니 다. 기록 해 볼 만 합 니 다.
만약 당신 이 Liux 에서 일한다 면, tail - f 로 로그 파일 의 출력 내용 을 추적 하 는 것 은 일상적인 일이 될 것 입 니 다.
그러나 가끔 은 민감 한 단어 에 관심 이 많 습 니 다. 동적 추적 과 동시에 이 단어 들 을 밝 히 고 싶 습 니 다. 예 를 들 어 로그 의 ERROR 키워드 등 입 니 다.
그러면 하나의 사고방식 은 바로 당신 이 tail 에서 출력 한 물건 을 다시 포장 처리 하 는 것 이다. 이것 은 linux 파이프 처리 사상 에 부합된다.
하 이 라이트 로그 의 ERROR 를 예 로 들 면 이렇게 할 수 있 습 니 다.
tail -f xxx.log | perl -pe 's/(ERROR)/\e[1;31m$1\e[0m/g'

 그 중에서 xxx. log 는 당신 이 추적 할 파일 입 니 다.여기 서 리 눅 스 PATH 에 perl 이 있다 고 가정 했다.perl 이 여기 서 하 는 일 은 명령 행 을 통 해 ERROR 문자열 을 동적 으로 교체 하 는 작업 입 니 다. 교체 과정 에서 주로 Linux 의 console 을 사 용 했 습 니 다.codes 의 문법 구조.(console codes 에 대한 자세 한 내용 은 man console codes 를 통 해 알 수 있 습 니 다) 여기,\e 는 주로 이전 설명 을 합 니 다.
서버 로그 같은 로 그 를 가지 고 있다 면 위의 명령 을 사용 해 보 세 요. ERROR 을 모두 붉 게 표시 한 것 이 아 닙 니까?
이 원 리 를 이용 하여 필요 한 색상 에 따라 관심 있 는 출력 을 밝 힐 수 있 습 니 다. 구체 적 인 색상 설명 은 man consolecodes 에서 찾 았 습 니 다.
또한 less 자체 도 tail - f 와 같은 동작 을 지원 합 니 다. less 로 파일 을 열 고 SHIFT + F 키 를 누 르 면 follow 모드 로 바로 들 어 갑 니 다.tail - f 효과 와 일치 하 는 것 같 습 니 다.이 점 을 이용 하여 하 이 라이트 테 일 - f 의 효 과 를 얻 으 려 면 모두 다음 과 같은 3 단계 로 나 뉜 다.
  • less xxx.log
  • 에서/${key work} 방식 으로 하 이 라이트 키 워드 를 검색 합 니 다.(현재 파일 에 없어 도 괜찮아)
  • SHIFT + F, follow 모드 진입
  • 마무리!

    좋은 웹페이지 즐겨찾기