2017-08-08 1 views
0

Je suis curieux si sqlite3 a le potentiel de produire du texte en couleurs pour le rendre plus facile à lire dans Terminal? Je n'ai rien vu dans la documentation, donc je suppose que non, à moins qu'il y ait une extension pour ça ou quelque chose comme ça.Existe-t-il un moyen d'avoir une sortie SQLite en couleur?

Répondre

2

La coquille de ligne de commande sqlite3 émet l'avertissement de base de données en mémoire en gras:

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

Cela se fait avec des séquences d'échappement VT100:

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

Vous pouvez modifier vos requêtes pour ajouter de telles séquences d'échappement à la sortie, par exemple, ␛[31m pour le rouge:

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