반응형
jq를 사용하여 숫자를 문자열로 변환하려면 어떻게 해야 합니까?
다음 jq 명령과 Json이 제공됩니다.
jq '.[]|[.string,.number]|join(": ")' <<< '
[
{
"number": 3,
"string": "threee"
},
{
"number": 7,
"string": "seven"
}
]
'
출력 형식을 다음과 같이 지정하려고 합니다.
three: 3
seven: 7
불행히도 내 시도는 다음 오류를 발생시킵니다.
jq: 오류: 문자열과 숫자를 추가할 수 없습니다.
숫자를 문자열로 변환하여 둘 다 결합할 수 있도록 하려면 어떻게 해야 합니까?
jq 명령에는 tostring 기능이 있습니다. 시행 착오를 통해 사용법을 배우는 데 시간이 걸렸습니다. 사용 방법은 다음과 같습니다.
jq -r '.[] | [ .string, .number|tostring ] | join(": ")' <<< '
[{ "number": 9, "string": "nine"},
{ "number": 4, "string": "four"}]
'
nine: 9
four: 4
대안적이고 틀림없이 더 직관적인 형식은 다음과 같습니다.
jq '.[] | .string + ": " + (.number|tostring)' <<< ...
주변에 괄호가 필요하다는 점에 주목할 가치가 있습니다 .number|tostring
.
이러한 간단한 경우 문자열 보간 의 암시적 문자열 캐스팅이 수행됩니다.
.[] | "\( .string ): \( .number )"
jq‣play 에서 실제로 확인하십시오 .
'map_values' 연산자를 사용하여 객체 수정
예시
{"foo": {"바": 3}}
map_values( . + {"막대": .bar|tostring} )
산출
{ "푸": { "막대": "3" } }
ReferenceURL : https://stackoverflow.com/questions/35365769/how-do-i-use-jq-to-convert-number-to-string
반응형
'IT이야기' 카테고리의 다른 글
android -gradle 프로젝트를 빌드할 때 crashlytics 개발자 도구 오류 (0) | 2021.09.22 |
---|---|
C++ 강제 컴파일 시간 오류/스위치의 암시적 폴스루에 대한 경고 (0) | 2021.09.22 |
UITableView의 2가지 유형의 사용자 정의 UITableViewCells (0) | 2021.09.21 |
새 분기를 체크아웃할 때 *.pyc 파일 및 비어 있는 디렉토리를 자동으로 제거합니다. (0) | 2021.09.21 |
numpy.array의 임의 차원에 대해 반복 (0) | 2021.09.21 |