awk将普通文本转换成json文件


script1:

#!/bin/bash
#Date:2016-11-16
#Author:eivll0m

awk -F"\t" -vq='"' '{
        a[$1]=a[$1]?a[$1]"\t"$2"\t"$3"\t"$4:$2"\t"$3"\t"$4
        }END{
                for(i in a){
                        printf i"\t[";l=split(a[i],b,"\t");
              for(j=1;j<=l;j+=3){ printf "{h_name"":"q b[j] q",";
                   printf "level"":"q b[j+1] q",";
                   printf "addres"":"q b[j+2] q"}," } print "]" } }' yy.txt|sed 's/,]$/]/' >>yy_json.txt

script2:

#!/bin/bash
#Date:2016-11-17
#Author:eivll0m

awk -F"\t" -vq='"' '
        function json(x,y){printf("%s:%s,",q x q, q y q)}
        function json2(x,y){printf("%s:%s",q x q, q y q)}
        function json3(x,y){printf("%s:%s",q x q, y)}
                {
                        printf "{";
              json("id",$2); printf q"essential_info"q":{"; json("name",$1); json("introduction",$3); json("medical_insurance",$4); json("alias",$5);
              json("position",$6); json("infectivity",$7); json("route_of_transmission",$8); json2("multiple_population",$9);
              printf "},"; printf q"symptom"q":{"; json("typical",$10); json2("content",$11);
              printf "},"; json("pathogeny",$12);
              json("prevent",$13); printf q"inspect"q":{"; json("item",$14); json2("content",$15);
              printf "},"; json("differentiate",$16); printf q"treat"q":{"; json("mode",$17); json2("content",$18);
              printf "},"; json("nurse",$19); json("complication",$20); json3("hospital",$21); print "}" }' jibin.TXT >jibin.json

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM