shell命令行执行python(解析json)
虾米姐
阅读:1047
2020-10-15 10:16:28
评论:0
每个脚本都有自己的擅长。
有次实现一个work,使用了shell,php,python看着文件种类多,不方便交接,看着也比较麻烦。
减少文件种类数,也是很有必要的。
遇到的场景:shell程序需要从json中获取信息,继续处理。
文件, json.txt
{ "name": "中国", "province": [{ "name": "黑龙江", "cities": { "city": ["哈尔滨", "大庆"] } }, { "name": "广东", "cities": { "city": ["广州", "深圳", "珠海"] } } ] }
可以在shell中直接调用python(注意load 与 loads的区别)
par@ubuntu:~/Desktop/test$ cat json.txt | /usr/bin/python2.7 -c "import json; import sys; obj=json.load(sys.stdin); print obj['province'][1]['name'].encode('utf-8')" 广东 par@ubuntu:~/Desktop/test$ cat json.txt | /usr/bin/python2.7 -c "import json; import sys; obj=json.load(sys.stdin); print obj['province'][1]['cities']['city'][1].encode('utf-8')" 深圳
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。