我刚刚开始在我们的日志处理系统中使用SQLite,我只是将文件导入到sqlite数据库中,该数据库有'@'作为字段分隔符.
如果我在SQLite repl中运行以下命令
$ sqlite3 log.db
sqlite> .separator "@"
sqlite> .import output log_dump
Run Code Online (Sandbox Code Playgroud)
它有效[导入成功].但是如果我尝试通过bash脚本做同样的事情
sqlite log.db '.separator "@"'
sqlite log.db '.import output log_dump'
Run Code Online (Sandbox Code Playgroud)
它没有.分隔符转回"|" 我收到一个错误,说没有足够的列
output line 1: expected 12 columns of data but found 1
Run Code Online (Sandbox Code Playgroud)
我怎样才能克服这个问题?
您应该同时将两个命令传递给sqlite:
echo -e '.separator "@"\n.import output log_dump' | sqlite log.db
Run Code Online (Sandbox Code Playgroud)