네 포맷 잇는 CLI toolchain
jq — JSON 전용 쿼리 언어
개척자. jq 가 JSON 파싱, 쿼리 적용, JSON emit. 그 필터 문법 (.foo[], map, select) 이 다른 거의 lingua franca 됨.
yq — 같은 문법, 네 포맷 다
Mike Farah 의 yq 가 jq 의 필터 언어를 YAML, JSON, TOML, XML, CSV 에 적용. yq -p toml -o yaml file.toml 가 TOML 읽고 YAML emit. 가장 좋은 범용 변환 도구.
dasel — 여러 포맷 가로지르는 selector
dasel 이 통합 selector 문법 (.config.server.port) 사용, JSON/YAML/TOML/XML/CSV 지원. 단순 lookup 엔 yq 보다 가벼움; 변환엔 비슷.
gron — grep 위해 JSON 평탄화
gron 이 중첩 JSON 을 줄당 한 할당으로: json.users[0].name = "Pippa";. 그 후 grep 가 JSON 에 기대대로 작동. gron --ungron 가 원본 재구성. 깊이 중첩된 API 응답에서 필드 찾기-그-다음-추출에 외과적.
원칙: jq 의 필터 언어 한 번 배워; YAML/TOML 에 yq 통해 재사용. 투자가 config audit, log 탐험, CI 파이프라인 접착제 가로질러 갚음. Python 잡고 YAML 파일 주무르려는 순간 yq 존재 잊은 것 같음.