打印其中带有点的键的值

时间:2019-12-01 01:59:00

标签: yq

我有一个以下格式的yaml文件

---
users:
  foo1.bar1@email.com:
    - roles/role1
    - roles/role2
    - roles/role3

  foo2.bar2@email.com:
    - roles/role4
    - roles/role5
    - roles/role6

现在,我想打印foo1.bar1@email.com的角色

我正在尝试执行以下操作

cat permissions.yaml | yq '.users[ foo1.bar1@email.com]'
jq: error: syntax error, unexpected FORMAT (Unix shell quoting issues?) at <top-level>, line 1:
.users[ foo1.bar1@email.com]
jq: 1 compile error

有没有解决的办法?

1 个答案:

答案 0 :(得分:0)

尝试删除键前面的空格:

cat permissions.yaml | yq '.users[foo1.bar1@email.com]'

这可能会解决它。