您的位置:首页 > 运维架构 > Shell

bash 操作 sqlite3

2016-02-27 17:27 489 查看
首先,这是个奇怪的需求。。。但是遇到了。我参考后文链接里的方法,做了自己的。

表是自己手动建的,数据库名字叫 new.db:

create table test (sn varchar(20), name varchar(20));


那么,就开始在 shell 下工作了。首先是组装我们的 query:

query="insert into test values(\"1\",\"luo\");"


然后,指定数据库:

sqlitedb="sqlite3 new.db"


接着,把准备好的 query 送给数据库:

$sqlitedb <<EOF
$query
.quit
EOF


其实,这里只是把数据库打开,然后把两个 EOF 之间的几行文字送给 sqlite3 的标准输入。这里的 .quit 好像可要可不要,先留着。

取数据类似,我使用下面这句做了尝试:

result=$($sqlitedb <<EOF
$query
.quit
EOF
)


执行完这一句,打印 result:

echo $result
1|luo 2|zhou


很明显,这样是可行的。
http://blog.csdn.net/wangbole/article/details/8062529
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: