월을 기준으로 여러 파일의 문자열을 grep하는 방법

월을 기준으로 여러 파일의 문자열을 grep하는 방법

여러 로그 파일 세트가 있고 2015년 7월과 10월 사이에 이러한 여러 로그 파일에서 특정 문자열을 검색하고 싶습니다. 매월 여러 개의 로그 파일이 있습니다. 예를 들면 다음과 같습니다.

test.log.2015-07-01.1
test.log.2015-07-01.2
test.log.2015-07-01.3
test.log.2015-10-31.4
test.log.2015-12-01.5
test.log.2016-02-28.6 

등...

이제 2015년 7월부터 2015년 10월까지의 사용 로그만 찾고 있습니다. 현재 다음 grep명령을 사용하고 있습니다.

grep -E 'importcoursecustomization|importnoncoursecustomization' test1.log.2015-07-01

이를 사용하고 2015년 7월부터 2015년 10월까지의 기간에 대해서만 사용 로그에서 여러 문자열을 검색하려면 어떻게 해야 합니까?

답변1

grep -E 'importcoursecustomization|importnoncoursecustomization' test1.log.2015-[0,1][7,0]-[0-9][0-9].*

여기서 첫 번째와 두 번째는 [01][09]9월과 10월의 월 선택을 위한 것이고(또한 일치 00하지만 19운 좋게도 유효한 월 번호가 아님) 마지막 두 개는 날짜 선택을 위한 것입니다.

관련 정보