jq를 사용하여 json 출력에서 [key,value] 배열 내부의 값을 가져오는 방법
[[1645128660000,0],[1645128720000,0],[1645128780000,0],[1645128840000,0],[1645128900000,0],[1645128960000,0],[1645129020000,0],[1645129080000,0],[1645129140000,0],[1645129200000,0]]
답변1
나는 이것이 이 내부 목록에 대해 구현하기가 매우 쉽다고 생각합니다. 값이 모두 0으로 나타나므로...
jq '.[][1]' < yourjsonfile
다른 방법을 제공하십시오. Python은 목록, 사전 및 기타 유형으로 작업할 때 적합한 도구입니다. 목록에서 값을 검색하는 방법을 이해하려면 다음을 수행해야 합니다.
#!/usr/bin/env python
mylist = [[1645128660000,0],[1645128720000,0],[1645128780000,0],[1645128840000,0],[1645128900000,0],[1645128960000,0],[1645129020000,0],[1645129080000,0],[1645129140000,0],[1645129200000,0]]
for k,v in mylist:
print("Key":,k)
print("Value":v)
또는 목록 이해를 사용하십시오.
[v for k,v in mylist]
그 정도면 충분합니다. jq를 사용할 수 있는 훌륭한 페이지도 있습니다.https://jqplay.org/#
답변2
입력이 요소의 배열이고 각 요소에 [key, value]
정수 키와 값이 있는 것으로 가정하면 다음을 사용하여 특정 키에 대한 값을 추출할 수 있습니다.
mykey=1645128900000
jq --argjson key "$mykey" '.[] | select(first == $key) | last' file
이는 주어진 키를 첫 번째 요소로 가진 모든 배열 항목을 선택한 다음 선택한 각 섹션에서 값(마지막 요소)을 추출합니다.