在 cli 的单个命令中向 sqlite3 提交多个命令
Submitting several commands to sqlite3 in a single command at cli
在 Mac OS Yosemite 我使用以下版本的 SQLite:
# sqlite3 --version
3.8.5 2014-08-15 22:37:57 c8ade949d4a2eb3bba4702a4a0e17b405e9b6ace
我有 2 个命令 运行 在 sqlite3 提示符下正常:
.read android.sql
.import words.txt dict
上面的第一个命令在我的 Android 应用程序中创建了我需要的 3 tables(我使用 SQLiteAssetHelper 复制 my.db 进入 APK 文件)。
上面的第二个命令从文本文件中填充 dict
table。
如何在 cli 中 运行 在单个命令 中 这两个命令?
我试过以下分隔符:分号、斜杠和 \n
,但这不起作用:
echo ".read android.sql / .import words.txt dict" | sqlite3 my.db
Usage: .read FILE
更新:
这在 Mac OS 终端中有效(谢谢,马克)-
# echo -e "command1\ncommand2"
command1
command2
# echo -e ".read android.sql\n.import words.txt dict" | sqlite3 my.db
Usage: .read FILE
试试这个:
echo -e "command1\ncommand2" | sqlite3 my.db
例如:
echo -e ".print hello\n.print goodbye" | sqlite3
hello
goodbye
使用 bash
的内置帮助查看 echo
的帮助页面:
help echo
在 Mac OS Yosemite 我使用以下版本的 SQLite:
# sqlite3 --version
3.8.5 2014-08-15 22:37:57 c8ade949d4a2eb3bba4702a4a0e17b405e9b6ace
我有 2 个命令 运行 在 sqlite3 提示符下正常:
.read android.sql
.import words.txt dict
上面的第一个命令在我的 Android 应用程序中创建了我需要的 3 tables(我使用 SQLiteAssetHelper 复制 my.db 进入 APK 文件)。
上面的第二个命令从文本文件中填充 dict
table。
如何在 cli 中 运行 在单个命令 中 这两个命令?
我试过以下分隔符:分号、斜杠和 \n
,但这不起作用:
echo ".read android.sql / .import words.txt dict" | sqlite3 my.db
Usage: .read FILE
更新:
这在 Mac OS 终端中有效(谢谢,马克)-
# echo -e "command1\ncommand2"
command1
command2
# echo -e ".read android.sql\n.import words.txt dict" | sqlite3 my.db
Usage: .read FILE
试试这个:
echo -e "command1\ncommand2" | sqlite3 my.db
例如:
echo -e ".print hello\n.print goodbye" | sqlite3
hello
goodbye
使用 bash
的内置帮助查看 echo
的帮助页面:
help echo