我尝试在从JSON文件获取信息时添加一个变量,如下所示。
stack=$(cat profiles.json | jq '.generic.category')
email=$(cat profiles.json | jq '.central.[Need to add $stack variable here].email')
echo $email
password=$(cat profiles.json | jq '.central.[Need to add $stack variable here].password')
echo $password
我试过一些像jq --arg v $stack '.central[$v]password*'
这样的东西,但都不起作用。
我的profiles.json如下所示:
"central": {
"one": {
"tenant": "xxx-yyy-zzz",
"email": "xyz@gmail.com",
"password": "1111"
},
"two": {
"tenant": "aaa-bbb-ccc",
"email": "xyz@gmail.com",
"password": "2222"
}
},
"generic": {
"username": "root",
"password": "xyz",
"project": "ABC",
"category": "two"
}
使用变量获取所需信息的正确命令是什么?
2条答案
按热度按时间whitzsjs1#
jobtbby32#
您可以不使用shell变量
stack
,除非您希望稍后在shell脚本中的其他位置使用它。