awk에서 레코드 구분 기호를 보존할 수 있습니까?

awk에서 레코드 구분 기호를 보존할 수 있습니까?

기록을 첫 번째 단어(예: 디버그 또는 정보)로 구분하고 RS를 유지하고 싶습니다.

그러나 프로그램이 실행되면 awk는 RS를 삭제합니다.

어떻게 저장하나요?

log.txt는

DEBUG:[2018-04-09 13:00:01]
=========================
START LOG 
:
:
END LOG 
===========================

DEBUG:[2018-04-09 13:00:02]
 INFO:[2018-04-09 13:00:03]
DEBUG:[2018-04-09 13:00:04]
=========================
START LOG 
:
:
END LOG 
===========================

내 시도 계획은

$gawk 'BEGIN{RS="(DEBUG|INFO)"; FS="\n"}{print RS$0}' log.txt

하지만 그것은 보여줍니다

(DEBUG|INFO):[2018-04-09 13:00:01]
=========================
START LOG 
:
:
END LOG 
===========================

(DEBUG|INFO):[2018-04-09 13:00:02]
(DEBUG|INFO):[2018-04-09 13:00:03]
(DEBUG|INFO):[2018-04-09 13:00:04]
=========================
START LOG 
:
:
END LOG 
===========================

답변1

RT를 이용하시면 됩니다

gawk 'BEGIN{RS="(DEBUG|INFO)" FS="\n"}{printf "%s%s", $0, RT}' log.txt

관련 정보