반응형
jq json 출력에서 열 제외
저는 이 모든 것을 없애고 싶습니다.timestamp
jq JSON 프로세서를 사용하여 여기에 입력합니다.
[
{
"timestamp": 1448369447295,
"group": "employees",
"uid": "elgalu"
},
{
"timestamp": 1448369447296,
"group": "employees",
"uid": "mike"
},
{
"timestamp": 1448369786667,
"group": "services",
"uid": "pacts"
}
]
화이트리스트는 나에게도 유효합니다.select uid, group
궁극적으로 제가 정말 원하는 것은 다음과 같은 고유한 가치를 가진 목록입니다.
employees,elgalu
employees,mike
services,pacts
타임스탬프만 삭제하려면del()
기능:
jq 'del(.[].timestamp)' input.json
단, 원하는 출력을 얻기 위해 I don't knowledge를 사용하지 않습니다.del()
기능.출력에 표시되는 필드를 알고 있기 때문에 어레이에 다음 명령어를 입력하기만 하면 됩니다.group
그리고.id
그런 다음 를 사용합니다.join()
기능:
jq -r '.[]|[.group,.uid]|join(",")' input.json
-r
raw out의 약자입니다. jq
값은 따옴표로 둘러싸지 않습니다.
출력:
employees,elgalu
employees,mike
services,pacts
기록상 대안은 다음과 같다.
$ jq -r '.[] | "\(.uid),\(.group)"' input.json
(화이트 리스트의 어프로치에서는 순서를 변경하기 쉽고, 이 어프로치에서는 간격 변경 등이 용이합니다.)
다음의 예는, 안전한 CSV 를 필요로 하는 모든 유저에게 도움이 됩니다(예를 들면, 값에 쉼표 또는 줄바꿈 문자가 포함되어 있는 경우).
$ jq -r '.[] | [.uid, .group] | @csv' input.json
"elgalu","employees"
"mike","employees"
"pacts","services"
Sed는 너의 가장 친한 친구이다 - 나는 더 간단한 것이 생각나지 않는다.질문의 작성자와 같은 문제를 안고 있습니다만, 같은 문제에 대한 보다 간단한 답변일 수 있습니다.
< file sed -e '/timestamp/d'
언급URL : https://stackoverflow.com/questions/33895076/exclude-column-from-jq-json-output
반응형
'programing' 카테고리의 다른 글
mvn spring-boot: run vs java - jar (0) | 2023.03.08 |
---|---|
입력 필드의 텍스트 사용 안 함 7 워드프레스 연락처 (0) | 2023.02.26 |
"React가 Hooks 순서 변경을 감지했습니다." 그러나 Hooks가 순서대로 호출되는 것 같습니다. (0) | 2023.02.26 |
angularjs는 입력 유효성 검사에 실패할 때 폼 제출을 방지합니다. (0) | 2023.02.26 |
JSONObject를 맵으로 변환 (0) | 2023.02.26 |