質問: DBファイルをCSV出力したく、コマンドプロンプトからsqlite3を使用して以下の処理を行っています。 ■コマンドプロンプトから実行しているコマンド sqlite3 [DBファイル名] < output.query output.queryにはselect文とCSV出力のファイル名を記載しています。 ↓ ■output.queryの内容 .headers on .mode csv ← CSVで出力する指定 .output "./out_test_columns.csv" ← 出力するファイル名 select * from test_columns; ← 取り出すテーブル ※困っていること この方法だと単一のファイルは変換できますが、複数のDBを入力としたファイル変換が上手くできません。 outputで作成されるファイル名を入力するファイル名と同一で出力できれば解決すると思いましたが、知見が無いため皆さんのお知恵をお貸しいただけないでしょうか。 よろしくお願いいたします。
回答: 出力先をファイルではなく、標準出力のままにして、リダイレクトで追記していってはどうでしょう? sqlite3 [DBファイル名] < output.query >> out_test_columns.csv ■output.queryの内容 .headers on .mode csv ← CSVで出力する指定 select * from test_columns; ← 取り出すテーブル みたいな感じで行けませんかね?