function Json-Format-Add(){
if [[ $data == "[]" ]];then
#拼接JSON
data="["$@"]"
echo "空列表追加"
else
#初始化data,去掉右侧向左第一个"]"符号以及右侧所有字符
data=$(echo ${data%*]})
#初始化data,去掉左侧向右第一个"["符号以及左侧所有字符
data=$(echo ${data#*[})
#拼接JSON
data="["${data}", "$@"]"
fi
}
函数用途:
可以实现对字典元素的JSON格式化及元素追加操作,结果数据可作为JSON解析。也可以作为列表数据追加等操作。
使用方法:
1.定义一个空列表:
data="[]"
2.初始化一段字典数据
result=$(cat <<- EOF
{"name": "Linux", "hostname": "MyComputer", "ip": "127.0.0.1"}
EOF
)
3.调用函数
Json-Format-Add $result
4.结果输出
echo $result
{"name": "Linux", "hostname": "MyComputer", "ip": "127.0.0.1"}
5.追加
result2=$(cat <<- EOF
{"name": "AUX", "hostname": "MyComputer2", "ip": "192.168.1.2"}
EOF
)
echo $data
[{"name": "Linux", "hostname": "MyComputer", "ip": "127.0.0.1"}, {"name": "AUX", "hostname": "MyComputer2", "ip": "192.168.1.2"}]