2013-08-20 2 views
1

나는 등 오류, 예외 등의 키워드를 기반으로 서버 로그 파일에서 라인을 필터링하고 색상을 시도하고 원하는 다른 문자열을 포함하는 경우에도 문자열을 기반으로 선을 무효로.그것이 내가

perl -ne 'print if s/e-business|exception|environment|error/\033[1;31m$&\033[0m/gi' 

지금까지 제대로 작동했지만 문제는 무시하고 싶은 특정 오류가 있습니다. 키워드 TEST을 사용한다고 가정 해 봅시다.이 행에는 오류, 예외 키워드가 포함되어 있습니다. 나는 lookahead와 lookbehind를 시도했지만 문제는 오류입니다, 예외, TEST 고정 된 장소에 오지 마세요. 그래서

, 어떻게하면 내가 원하는 다른 키워드가 포함 된 경우에도, (경우에 가지마) TEST을 포함하는 무시 라인에 대해 갈 수 있나요?

참고 : 이미 그렙에서 일을했다,하지만 난 펄 그것을 달성하기 관심이 있습니다.

답변

3

그냥 두 번째 정규식 유사

print if /error/i and !/test/i 

또는 무언가를 사용합니다.

+0

아! 그것은 작동합니다 :-) 나는 왜 그런지 잘 모르겠지만 이전에 이것을 시도했지만 작동하지 않았습니다. 감사. – vikan