![쉘 스크립트를 사용하여 날짜가 포함된 특정 타임스탬프 사이의 로그 가져오기](https://linux55.com/image/75423/%EC%89%98%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%EB%82%A0%EC%A7%9C%EA%B0%80%20%ED%8F%AC%ED%95%A8%EB%90%9C%20%ED%8A%B9%EC%A0%95%20%ED%83%80%EC%9E%84%EC%8A%A4%ED%83%AC%ED%94%84%20%EC%82%AC%EC%9D%B4%EC%9D%98%20%EB%A1%9C%EA%B7%B8%20%EA%B0%80%EC%A0%B8%EC%98%A4%EA%B8%B0.png)
특정 시간 범위의 로그에서 정보를 추출하기 위해 쉘 스크립트를 사용하고 싶습니다. 로그의 한 줄은 다음과 같습니다.
[15:01:27:176][15-10-2015]: testing1-vidya-Thu Oct 15 11:49:27 IST 2015 [15:02:27:178][15-10-2015]: testing2-vidya-Thu Oct 15 11:49:27 IST 2015 [15:10:27:179][15-10-2015]: testing3-vidya-Thu Oct 15 11:49:27 IST 2015 [15:01:27:180][16-10-2015]: testing4-vidya-Thu Oct 15 11:49:27 IST 2015 [15:20:27:181][16-10-2015]: testing5-vidya-Thu Oct 15 11:49:27 IST 2015 [15:02:27:182][16-10-2015]: testing6-vidya-Thu Oct 15 11:49:27 IST 2015 [15:03:27:183][17-10-2015]: testing7-vidya-Thu Oct 15 11:49:27 IST 2015 [15:04:27:184][17-10-2015]: testing8-vidya-Thu Oct 15 11:49:27 IST 2015 [15:05:27:191][17-10-2015]: testing9-vidya-Thu Oct 15 11:49:27 IST 2015 [15:18:27:192][17-10-2015]: testing10-vidya-Thu Oct 15 11:49:27 IST 2015 [15:29:27:193][17-10-2015]: testing11-vidya-Thu Oct 15 11:49:27 IST 2015 [15:03:27:208][18-10-2015]: testing12-vidya-Thu Oct 15 11:49:27 IST 2015 [15:04:27:209][18-10-2015]: testing13-vidya-Thu Oct 15 11:49:27 IST 2015 [15:07:27:210][18-10-2015]: testing14-vidya-Thu Oct 15 11:49:27 IST 2015
특정 시간 간격으로 데이터를 추출해야 합니다. 예를 들어 [2015년 10월 17일] 15:01부터 15:08 사이
[15:03:27:183][2015년 10월 17일]: 테스트 7-vidya-목 10월 15일 11:49:27 IST 2015 [15:04:27:184][2015년 10월 17일 일]: test8- vidya-목 10월 15일 11:49:27 IST 2015 [15:05:27:191][17-10-2015]: test9-vidya-목 10월 15일 11:49: 27 IST 2015
나는 다음 코드를 사용했습니다.
grep -E "^[(15:0[1-8])" | grep '[17-10' filename
나는 이것을 시도했다. 15시 18분과 15시 29분을 포함하여 2015년 10월 17일의 모든 데이터를 가져오고 있습니다. 15:01에서 15:08 사이의 데이터만 필요합니다. 이것이 맞나요? 질문이 있으신가요?
답변1
이것은 나에게 효과적입니다.
grep "\[17-10" filename | grep "15:0[1-8]"