在下面的 json 中,我無法獲得只有記者的值。輸出應該是 jhoncena only,應該寫入檔案。
jq -r '.values' response.json | grep reporter
輸出是
"name": "reporter-jhoncena"
{
"size": 3,
"limit": 25,
"isLastPage": true,
"values": [
{
"name": "hello-world"
},
{
"name": "test-frame"
},
{
"name": "reporter-jhoncena"
}
],
"start": 0
}
uj5u.com熱心網友回復:
您可以使用capture:
jq -r '.values[].name
| capture("^reporter-(?<name>.*)").name
' response.json
uj5u.com熱心網友回復:
jq -r '.values[]
| select(.name|index("reporter"))
| .name
| sub("reporter-";"")' in.json > out.txt
當然,您可能希望使用不同的選擇標準,例如使用 startswithor test。
uj5u.com熱心網友回復:
您可以使用split諸如
jq -r '.values[2].name | split("-")[1]' response.json
Demo
編輯:或者你可以使用
jq -r '.values[].name | select(.|split("-")[0]=="reporter")|split("-")[1]' response.json > outfile.txt
不知道陣列中名稱元素的順序
Demo
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/410689.html
標籤:
上一篇: =運算子有什么特別之處?[復制]
