有没有办法让SQLite输出颜色?

时间:2017-08-08 14:19:16

标签: sqlite colors terminal

我很好奇sqlite3是否有可能输出颜色文本以便在终端中更容易阅读?我没有在文档中看到任何内容,所以我猜它没有,除非有它的扩展名。

1 个答案:

答案 0 :(得分:2)

sqlite3命令行shell以粗体显示内存数据库警告:

$ sqlite3 SQLite version 3.19.0 2017-03-30 17:13:37 Enter ".help" for usage hints. Connected to a transient in-memory database.⇦大胆的 Use ".open FILENAME" to reopen on a persistent database. sqlite>

这是通过VT100转义序列完成的:

static void printBold(const char *zText){
  printf("\033[1m%s\033[0m", zText);
}

因此,您可以更改查询以将此类转义序列添加到输出中,例如,␛[31m表示红色:

SELECT x, char(27)||'[31m' || y || char(27)||'[0m' AS y_red
FROM (SELECT 'abc' AS x, 123 AS y);
abc|123