반응형
jq를 사용하여 JSON의 2개 필드를 구성합니다.
사용하고 있다jq
다시 포맷하기 위해JSON
.
JSON 문자열:
{"channel": "youtube", "profile_type": "video", "member_key": "hello"}
원하는 출력:
{"channel" : "profile_type.youtube"}
명령:
echo '{"channel": "youtube", "profile_type": "video", "member_key": "hello"}' | jq -c '. | {channel: .profile_type + "." + .member_key}'
아래 명령어는 문자열을 연결하는 것으로 알고 있습니다.그러나 위와 같은 논리로 동작하지 않습니다.
echo '{"channel": "youtube", "profile_type": "video", "member_key": "hello"}' | jq -c '.profile_type + "." + .member_key'
jq만을 사용하여 결과를 얻으려면 어떻게 해야 합니까?
문자열 연결 코드 주위에 괄호를 사용합니다.
echo '{"channel": "youtube", "profile_type": "video", "member_key": "hello"}' \
| jq '{channel: (.profile_type + "." + .channel)}'
다음은 Jeff가 제안한 대로 문자열 보간을 사용하는 솔루션입니다.
{channel: "\(.profile_type).\(.member_key)"}
예.
$ jq '{channel: "\(.profile_type).\(.member_key)"}' <<EOF
> {"channel": "youtube", "profile_type": "video", "member_key": "hello"}
> EOF
{
"channel": "video.hello"
}
문자열 보간은 와 함께 동작합니다.\(foo)
구문(셸과 유사)$(foo)
콜)을 클릭합니다.
공식 JQ 설명서를 참조하십시오.
언급URL : https://stackoverflow.com/questions/37710718/concat-2-fields-in-json-using-jq
반응형
'programing' 카테고리의 다른 글
WooCommerce 주문에서 쿠폰 데이터 가져오기 (0) | 2023.04.03 |
---|---|
AngularJS + OAuth (0) | 2023.04.03 |
Java JSON 시리얼화 - 베스트 프랙티스 (0) | 2023.04.03 |
Spring Boot, logback 및 logging.config 속성 (0) | 2023.04.03 |
Uglify를 통한 웹 팩 최적화JS 플러그인으로 인해 런타임 오류가 발생함 (0) | 2023.04.03 |