JSON 줄을 포함하는 적은 파일 - 줄을 강조 표시하거나 색상을 지정하는 방법은 무엇입니까?

JSON 줄을 포함하는 적은 파일 - 줄을 강조 표시하거나 색상을 지정하는 방법은 무엇입니까?

json 줄이 포함된 로그 파일이 있습니다. less는 일반 텍스트로 표시합니다.
더 적은 기능으로 출력을 색상화할 수 있습니까? 또한 그러한 파일의 예를
강조하는 json과 호환성이 떨어지는 타사 도구도 찾지 못했습니다.

{"date":"2021-10-21 16:09:54", "perf":{"action":"getTimelineByClient", "time":46.2}}
{"date":"2021-10-22 16:09:54", "perf":{"action":"getTimelineByClient", "time":46.2}}
{"date":"2021-10-23 16:09:54", "perf":{"action":"getTimelineByClient", "time":46.2}}

편집자 @glennjackman이
친절하게 지적해 주었습니다.https://github.com/sharkdp/bat- 내 요구 사항에는 적합하지 않지만 다른 사람에게는 도움이 될 수 있는 훌륭한 도구입니다. bat먼저 파일을 구문 분석한 다음 표시해 보십시오. 120,000개의 짧은 json 라인은 내 컴퓨터에 상당히 무겁습니다.

답변1

다음을 사용하여 JSON 출력에 색상을 지정할 수 있습니다.jq

cat log | jq .

출력은 꽤 좋지만 원하지 않으면 --compact-output(short: -c) 옵션을 사용할 수 있습니다.

lessafter와 같은 파이프 명령을 사용하려면 (short: ) 옵션 을 jq사용해야 합니다 .--color-output-C

lessaccept 명령은 옵션을 사용하여 ANSI 시퀀스를 재현할 수 있습니다 -r.

cat log | jq -cC . | less -r

관련 정보