我正在尝试打开一个文件,查看该文件并根据该值更改一个值并将其传递给一个文件或 var。以下是 JSON 的示例
{
"Par": [
{
"Key": "12345L",
"Value": "https://100.100.100.100:100",
"UseLastValue": true
},
{
"Key": "12345S",
"Value": "VAL2CHANGE",
"UseLastValue": true
},
{
"Key": "12345T",
"Value": "HAPPY-HELLO",
"UseLastValue": true
}
],
"CANCOPY": false,
"LOGFILE": ["HELPLOG"]
}
Run Code Online (Sandbox Code Playgroud)
我一直在使用 jq 并且我已经成功地隔离了对象组并更改了值。
cat jsonfile,json | jq '.Par | map(select(.Value=="VAL2CHANGE")) | .[] | .Value="VALHASBEENCHANGED"'
Run Code Online (Sandbox Code Playgroud)
这给
{
"Key": "12345S",
"Value": "VALHASBEENCHANGED",
"UseLastValue": true
}
Run Code Online (Sandbox Code Playgroud)
id 想要实现的是保留具有更改值的完整 JSON 输出
{
"Par": [
{
"Key": "12345L",
"Value": "https://100.100.100.100:100",
"UseLastValue": true
},
{
"Key": "12345S",
"Value": "VALHASBEENCHANGED", …Run Code Online (Sandbox Code Playgroud)