아래는 json 배열이며 각 개체의 링크와 이름을 인쇄해야 합니다. 쉘 스크립트를 통해 이를 달성할 수 있습니까? jq를 사용해 보았지만 하나의 값만 얻을 수 있습니다.
values[
{
"Links": "https://abc/tset",
"Dates": 1540204743643,
"name" : test1
}
{
"Links": "https://abc/tset",
"Dates": 1539256093799,
"name" : test2
}
]
답변1
이게 네가 말하는거야?
$ jq --raw-output '.values[] | [.Links,.name] | @tsv' <<< '{"values": [{"Links": "https://abc/tset", "Dates": 1540204743643, "name": "test1"}, {"Links": "https://abc/tset", "Dates": 1539256093799, "name": "test2"}]}'
https://abc/tset test1
https://abc/tset test2
답변2
다음을 사용할 수 있습니다.
grep -Eoe ' "Links":([[:space:]]+[^[:space:]]+){1}' -Eoe ' "name" :([[:space:]]+[^[:space:]]+){1}'
그 뒤에 나오는 단어를 찾아 표시 link
합니다 .name