一尘不染

从命令行运行Sqlite3脚本

sql

我正在编写一个shell脚本来scp一个项目,其中一部分涉及到在数据库中传输一些重要的表。

我在文件中存储了以下内容SQLTableTransfer

.o MyTable1.sql;
.dump MyTable1;

.o MyTable2.sql;
.dump MyTable2;

.o MyTable3.sql;
.dump MyTable3;

并抓住了机会

$ sqlite3 SQLTableTransfer

但这只是打开了Sqlite3 shell。从命令行运行这样的脚本的正确方法是什么?


阅读 144

收藏
2021-03-17

共1个答案

一尘不染

您提供给sqlite3程序的参数是数据库文件名。

要从文件执行命令,必须将输入重定向到该文件:

$ sqlite3 mydatabase.db < SQLTableTransfer

或告诉它从该文件中读取:

$ sqlite3 mydatabase.db ".read SQLTableTransfer"
2021-03-17