首页 > 代码库 > Use sed and awk to prettify json
Use sed and awk to prettify json
$ cat prettify.sed s/,/,\r\n/gs/\[/\r\n\[\r\n/gs/\]/\r\n\]\r\n/gs/{/\r\n{\r\n/gs/}/\r\n}\r\n/g
$ cat prettify.awk BEGIN{ depth = 0;}/\[/ { sp = 0; while(sp++ < depth) printf(" "); print $0; depth += 1; }/{/ { sp = 0; while(sp++ < depth) printf(" "); print $0; depth += 1; }/\]/ { if (depth > 1) depth -= 1; sp = 0; while(sp++ < depth) printf(" "); print $0; }/}/ { if (depth > 1) depth -= 1; sp = 0; while(sp++ < depth) printf(" "); print $0; }/".*":".*"/ {sp = 0;while(sp++ < depth)printf(" "); print $0;}
$ cat digitalstrategy.json | sed -f prettify.sed | awk -f prettify.awk | head -50{ "agency":"NSF", "generated":"2014-08-07 06:38:36", [ { "id":"2.1", "due":"90 Days", "due_date":"2012\/08\/21", [ { "type":"select", "name":"2-1-status", "label":"Overall Status", [ { "label":"Not Started", "value":"not-started" } { "label":"In Progress", "value":"in-progress" } { "label":"Completed", "value":"completed" } ] "value":"completed" } ] } { "id":"2.1.1", "parent":"2.1", "text":"Paragraph on customer engagement approach", "due":"90 days", "due_date":"2012\/08\/21", [ { "type":"textarea", "name":"2-1-1-customer-engagement-approach", "label":"Paragraph on customer engagement approach", [ ] } ] } { "id":"2.1.2", "parent":"2.1",
Use sed and awk to prettify json
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。