내 파일은 다음과 같습니다.타임 스탬프에 대한 grep 출력 정렬
[2013] [ a] INFO : [handleMessage] Handling messages ...
[2013] [ b] INFO : [handleMessage] The message received is: [OS OS-EVNTSVR0-H 20130404125956465000RFST M430 F ]
[2013] [ c] INFO : [handleMessage] Complete handling message.
[2013] [ a] INFO : [handleMessage] Handling messages ...
[2013] [ b] INFO : [handleMessage] The message received is: [OS OS-EVNTSVR0-H 20130404135956465000RFST M430 F ]
[2013] [ c] INFO : [handleMessage] Complete handling message.
받은 메시지 만 캡처하고 싶습니다. (내가 벌써) 메시지를 캡쳐 한 후 세 번째 열의 타임 스탬프 값으로 정렬해야합니다. 그러나 그것은 결국 일부 문자를 포함합니다. (예 : 위의 파일 20130404125956465000RFST 및 20130404135956465000RFST)
나는 많은 메시지를 받았는데이 명령을 사용합니다.
gzgrep 'The message received is:' Receiver.log.2013-04-04*.gz | cut -d"[" -f5 | sort -t -n -k3
그러나 접미사 문자로 인해 숫자 정렬은 작동하지 않습니다. 이 정렬 부분에 대해 아무도 도와 줄 수 없습니다. 시간 소인 값을 정렬해야합니다. 당신의 타임 스탬프를 별도의 단어와 형태 20 digits + 4 upperspace characters
의 (당신이 정규식을 조정할해야 할 수도 있습니다) 경우
답장을 보내 주셔서 감사합니다 ..이 작품 ..하지만 어떤 경우에는 별도의 단어가 20 자리 + 4 대문자와 같지 않습니다. 20 자리가 다를 수 있습니다. 처음 16 자만 타임 스탬프로 찍어야합니다 .. – user2247684