在shell脚本中进行多个sqlite3调用

时间:2010-11-18 02:48:17

标签: database scripting shell sqlite

我希望在shell脚本中执行以下命令:

$ sqlite3 /Users/riceje7/bin/places.sqlite
sqlite > .output places.txt;
sqlite > SELECT url FROM moz_places;
sqlite > .quit;
$ lpr /Users/riceje7/bin/places.txt

然而,脚本在初始sqlite3命令调用后停止,并且仅在我手动退出sqlite后执行其他命令。有没有人知道如何强制脚本按此顺序执行这些命令而无需手动输入?

1 个答案:

答案 0 :(得分:3)

你应该做..

sqlite3 [OPTIONS] FILENAME [SQL]

所以...

sqlite3 /Users/riceje7/bin/places.sqlite  "SELECT url FROM moz_places" > places.txt
lpr /Users/riceje7/bin/places.txt

或者更好(除非您出于某种原因需要保留places.txt)...

sqlite3 /Users/riceje7/bin/places.sqlite  "SELECT url FROM moz_places" | lpr