文档章节

#Shell脚本 -- 由json文件生成sql

zgw06629
 zgw06629
发布于 2015/07/14 19:58
字数 229
阅读 51
收藏 0
awk

#Shell脚本 -- 由json文件生成sql

#json文件格式:

$ head accounts.json
{"index":{"_id":"1"}}
{"account_number":1,"balance":39225,"firstname":"Amber","lastname":"Duke","age":32,"gender":"M","address":"880 Holmes Lane","employer":"Pyrami","email":"amberduke@pyrami.com","city":"Brogan","state":"IL"}
{"index":{"_id":"6"}}
{"account_number":6,"balance":5686,"firstname":"Hattie","lastname":"Bond","age":36,"gender":"M","address":"671 Bristol Street","employer":"Netagy","email":"hattiebond@netagy.com","city":"Dante","state":"TN"}

#将偶数行内容转成insert sql

$ head accounts.json | grep -v index | awk ' {s=substr($0, 2, length($0)-3); split(s,a,","); for(k=1; k<=length(a);k++){split(a[k], b, ":"); t[b[1]]=b[2]};  columns=""; values="";for(k in t){c=k; gsub("\"","",c);columns=columns ", " c ; values=values "," t[k]} print "insert into accounts("substr(columns,2)") values("substr(values,2)");"}'
insert into accounts( gender, state, email, employer, account_number, age, lastname, firstname, city, address, balance) values("M","IL","amberduke@pyrami.com","Pyrami",1,32,"Duke","Amber","Brogan","880 Holmes Lane",39225);
insert into accounts( gender, state, email, employer, account_number, age, lastname, firstname, city, address, balance) values("M","TN","hattiebond@netagy.com","Netagy",6,36,"Bond","Hattie","Dante","671 Bristol Street",5686);


参考文档:

http://www.cnblogs.com/chengmo/archive/2010/10/08/1846190.html

https://www.gnu.org/software/gawk/manual/html_node/String-Functions.html


© 著作权归作者所有

zgw06629

zgw06629

粉丝 18
博文 54
码字总数 30471
作品 0
海淀
程序员
私信 提问
跨平台的数据管理工具--SQL Operations Studio

SQL Operations Studio 是一个数据管理工具,支持在 Windows, macOS 和 Linux 上与 SQL Server, Azure SQL DB 和 SQL DW 配合使用。 功能亮点 通过简单的 XCopy 部署,可用于 Windows, macOS...

匿名
2017/11/20
7.9K
15
C结构体工具DirectStruct(综合示例二)

C结构体工具DirectStruct(综合示例二) 1.编写定义文件,用工具dsc处理之,自动生成XML转换代码和ESQL代码片段 2.编写应用代码 3.编译运行 ----------------------------------------------...

calvinwilliams
2014/10/08
439
0
hidu/mysql-schema-sync

mysql-schema-sync mysql表结构自动同步工具 用于将 数据库结构变化同步到 ! 支持功能: 同步新表 同步字段 变动:新增、修改 同步索引 变动:新增、修改 支持预览(只对比不同步变动) 邮件...

hidu
2015/10/11
0
0
使用 Impala Shell(翻译)

使用 Impala Shell 你可以使用 Impala shell 工具 (impala-shell) 配置数据库和表、插入数据和执行查询。你可以在交互式会话里提交 SQL 语句进行即席查询和探测(For ad hoc queries and exp...

weiqingbin
2014/01/07
789
0
FISCO-BCOS区块链开源平台部署步骤(2)

第二章 创世节点部署 2.1 初始化节点环境 本文使用路径为/mydata/nodedata-1/ 2.2 配置文件修改 2.2.1 god帐号配置 2.2.2 NodeId节点身份配置 节点的唯一标识 2.2.3 证书生成 2.2.4 配置log...

undefine
2018/03/01
464
0

没有更多内容

加载失败,请刷新页面

加载更多

VMware vSphere ESXi主机的访问控制

在vShpere中,访问ESXi主机的途径很多,如下: ESXi DCUI ESXi Shell ESXi SSH ESXi Host Client vCenter --> vSphere web client / vSphere Client VMware vSphere ESXi主机的访问控制,除了......

大别阿郎
12分钟前
1
0
大神讲解CGI、FastCGI和PHP-FPM关系图解

参考资料 概念了解:CGI,FastCGI,PHP-CGI与PHP-FPM:http://www.nowamagic.net/librarys/veda/detail/1319 php中fastcgi和php-fpm是什么东西:https://www.zybuluo.com/phper/note/50231 ......

网络小虾米
21分钟前
1
0
《DNS攻击防范科普系列3》 -如何保障 DNS 操作安全

引言 前两讲我们介绍了 DNS 相关的攻击类型,以及针对 DDoS 攻击的防范措施。这些都是更底层的知识,有同学就来问能否讲讲和我们的日常操作相关的知识点,今天我们就来说说和我们日常 DNS 操...

Mr_zebra
22分钟前
1
0
zk中ServerCnxn

实现接口Stats, Watcher 内部类 DisconnectReason CloseRequestException EndOfStreamException(流关闭) 属性 方法 getSessionTimeout 获取session失效时间 sendResponse 发送回复数据 se......

writeademo
27分钟前
1
0
如何将 Redis 用于微服务通信的事件存储

来源:Redislabs 作者:Martin Forstner 翻译:Kevin (公众号:中间件小哥) 以我的经验,将某些应用拆分成更小的、松耦合的、可协同工作的独立逻辑业务服务会更易于构建和维护。这些服务(也...

中间件小哥
30分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部