3

ログ処理システムに SQLite を使い始めたところです。ここでは、フィールド区切り文字として「@」を持つ sqlite データベースにファイルをインポートするだけです。

SQLite replで次を実行すると

$ sqlite3 log.db 
sqlite> .separator "@"
sqlite> .import output log_dump

動作します [インポートは成功しました]。しかし、bashスクリプトを介して同じことをしようとすると

sqlite log.db '.separator "@"'
sqlite log.db '.import output log_dump'

そうではありません。セパレーターは '|' に戻ります 列が不足しているというエラーが表示されます

output line 1: expected 12 columns of data but found 1

どうすればこの問題を克服できますか?

4

1 に答える 1

5

2 つのコマンドを同時に sqlite に渡す必要があります。

echo -e '.separator "@"\n.import output log_dump' | sqlite log.db
于 2012-05-03T14:33:00.573 に答える