【发布时间】:2019-12-06 12:00:46
【问题描述】:
我正在尝试将 json 作为变量导出:
$ export VARIABLE='[{"id": 2, "name": "job", "description": "job", "token": "toknetokentokentoken/token="}]'
$ echo $VARIABLE | jq .
[
{
"id": 2,
"name": "job",
"description": "job",
"token": "toknetokentokentoken/token="
}
]
然后我试图从令牌中获取值:
TOKEN=$(echo "$VARIABLE" | jq -r '.[] | select (.name == "job").token')
但它什么也不返回。我正在寻找,但我找不到问题。
【问题讨论】:
-
带有 $() 的表达式在使用 bash 时的行为至少可以追溯到 3.2。我怀疑提出的 Q 与异常行为相关的情况不匹配。
-
当您说“不返回任何内容”时,您的意思是
TOKEN的值是空字符串,还是赋值不产生输出。作业不产生输出。