我正在Windows中使用Sqlite进行一些查询(我以方式执行sqlite3 mydb.db),但是我无法重定向输出(我试图以.tables> 的常规命令行方式进行new_db_output.txt),因为sqlite在命令下作为程序运行线。
在官方的sqlite网页中,有一个部分称为“将结果写入文件”,但无法按我尝试的方式工作:
.tables .output new_db_output.txt
都不
.tables | .output new_db_output.txt
有什么想法将输出保存到文件吗?
注意:我正在使用sqlite3和Windows 7。
sqlite3命令行外壳的dot命令无法组合。
.output影响以下所有命令;只需预先执行即可:
.output new_db_output.txt
.tables
.output
Run Code Online (Sandbox Code Playgroud)
如果您在 SQLite 命令行界面之外工作:
您可以使用传统的系统重定向和管道机制。
sqlite3 database "SELECT * FROM table;" > somefile
sqlite3 database "SELECT * FROM table;" >> somefile
sqlite3 database "SELECT * FROM table;" | tee somefile
Run Code Online (Sandbox Code Playgroud)
tee将标准输出复制到somefile(如>重定向)。但是,您将在终端中看到输出。请注意,这tee是一个 Unix/Linux 实用程序。您可以使用命令生成 CSV 文件.mode。
sqlite3 database ".mode csv" "SELECT * FROM table;" > somefile.csv
Run Code Online (Sandbox Code Playgroud)
或者带有标题(感谢@Mike Kelly)
sqlite3 database ".mode csv" ".headers on" "SELECT * FROM table;" > somefile.csv
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5551 次 |
| 最近记录: |