shell输出json格式

读取文件里面数据,输出为json格式

#/bin/bash
 
bak=$IFS
IFS=$'\n'
j=0 
echo  "["
for i in `cat node.txt`
do
((j = j+1))
num=$(wc -l node.txt |cut -d " " -f 1) 
NAME=$(xxx) 
IP=$(xxx)
CPUPRECENT=$(xxx)
PORT=$(xxx)
STATE=$(xxx)
if [ $j -eq $num ];then
 echo -e "\n\t{"
        echo -e "\t\t\"name\": \"${NAME}\","
        echo -e "\t\t\"ip\": \"${IP}\","
        echo -e "\t\t\"cpupercent\":\"${CPUPRERCENT}\","
        echo -e "\t\t\"port\":\"${PORT}\","
        echo -e "\t\t\"state\":\"${STATE}\""
  echo -e "\n\t}"
else
  echo -e "\n\t{"
        echo -e "\t\t\"name\": \"${NAME}\","
        echo -e "\t\t\"ip\": \"${IP}\","
        echo -e "\t\t\"cpupercent\":\"${CPUPRERCENT}\","
        echo -e "\t\t\"port\":\"${PORT}\","
        echo -e "\t\t\"state\":\"${STATE}\""
  echo -e "\n\t},"
fi 
done
 echo "]"
IFS=$bak


版权声明:本文为qq_46495338原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。