将 json 值保存为变量

ph3*_*3ro 0 json jq

我从命令中得到以下输出。

{
  "data": {
    "access-type": "ObjectRead",
    "access-uri": "/p/u4yRbnS_Yv29ivICXNWz-76BAgBqfln0SthBVYLZ3AdPOs9BKTQEH48MZEJNvXaT/n/bmjx6wj24zrv/b/season5/o/abcd.zip",
    "bucket-listing-action": null,
    "id": "tePBaSkrsUEBY+rKK0HiwraPn76TLD86BOsqm7dr3cqjNXp6026BouTf9kQoKzZk:abcd.zip",
    "name": "abcd.zip",
    "object-name": "abcd.zip",
    "time-created": "2022-10-27T02:20:17.430000+00:00",
    "time-expires": "2023-02-01T00:00:00+00:00"
  }
}
Run Code Online (Sandbox Code Playgroud)

有人可以帮我提取access-uri的值根据上面的示例,输出应该是

/p/u4yRbnS_Yv29ivICXNWz-76BAgBqfln0SthBVYLZ3AdPOs9BKTQEH48MZEJNvXaT/n/bmjx6wj24zrv/b/season5/o/abcd.zip
Run Code Online (Sandbox Code Playgroud)

小智 8

我会一起去jq。在您的示例中,它将是(输入当然来自您的命令):

myvar=$(commandX | jq -r '.data."access-uri"?')
Run Code Online (Sandbox Code Playgroud)