bash 操作 sqlite3

首先,这是个奇怪的需求。。。但是遇到了。我参考后文链接里的方法,做了自己的。

表是自己手动建的,数据库名字叫 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

posted @   Biiigfish  阅读(1467)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
历史上的今天:
2014-02-27 DNS message解析
点击右上角即可分享
微信分享提示