给定一个JSON文件arguments.json
:
{"dagger": true, "version": false, "nether_strike": true,
"greater_bash": "5", "FILE": "ancientscroll.txt",
"empower_haste": "1", "help": false}
当调用这样的变量时:
#!/bin/bash
dagger=$(cat arguments.json | jq '.["dagger"]')
greater_bash =$(cat arguments.json | jq '.["greater_bash"]')
echo $dagger
echo $greater_bash
[OUT]:
true
"5"
该变量包含引号""
。
如何在jq中读取变量时删除引号?
我可以使用sed
来删除引号:
greater_bash =$(cat arguments.json | jq '.["greater_bash"]' | sed -e 's/^"//' -e 's/"$//')
echo $greater_bash
[OUT]:
5
但是,从jq
阅读时有没有办法删除引号?