如何从json文件中获取对象?

问题描述 投票:0回答:1

我有一个如下的json文件

{
  "requestData": {
    "username": "admin"
  },
  "eventTime": "2023-12-01T23:50:02.554+0000",
  "observer": {
    "id": "target"
  }

我只想并排获得以下输出,O/P

"username": "admin","eventTime": "2023-12-01T23:50:02.554+0000"

我尝试使用下面的方法,但是一次只能获取一条记录,如何嵌套两者并获得上面的输出

cat filename  | jq '.requestData.username'

}

json jq
1个回答
0
投票

以下内容应该能够满足您的需求:

$ cat filename | jq -r '"\"username\": \"" + .requestData.username + "\", \"eventTime\": \"" + .eventTime + "\""'
"username": "admin", "eventTime": "2023-12-01T23:50:02.554+0000"

如果您只想要值:

$ cat filename | jq -r '"\"" + .requestData.username + "\", \"" + .eventTime + "\""'
"admin", "2023-12-01T23:50:02.554+0000"

或者,如果您想按照 Jeff 的建议使用字符串插值:

$ cat filename | jq -r '"\"username\": \"\(.requestData.username)\", \"eventTime\": \"\(.eventTime)\""'
"username": "admin", "eventTime": "2023-12-01T23:50:02.554+0000"
© www.soinside.com 2019 - 2024. All rights reserved.