当我在MySQL的命令行解释器中执行SELECT查询时,会得到一个漂亮的ASCII表格:
+----+------+ | id | name | +----+------+ | 1 | Bob | | 2 | Mary | | 3 | Jane | | 4 | Lisa | +----+------+
但是,如果我把结果导出到其他地方(例如echo "SELECT ..." | mysql
),就只能得到一个单调乏味的制表符分隔格式。
如何在标准输出中获得这种漂亮的表格格式?
mysql
命令中使用-t
或--table
开关,例如:$ echo "SELECT ..." | mysql -t | cowsay -n
_______________
/ +----+------+ \
| | id | name | |
| +----+------+ |
| | 1 | Bob | |
| | 2 | Mary | |
| | 3 | Jane | |
| | 4 | Lisa | |
\ +----+------+ /
---------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
试试这个:
$ mysql -uyourUsername -pyourPassword -te 'SELECT * FROM aTable' aDatabase
+----+------+
| id | name |
+----+------+
| 1 | Bob |
| 2 | Mary |
| 3 | Jane |
| 4 | Lisa |
+----+------+
| cat
或其他地方,你会发现没有表格 - 除非你提供 -t
或 --table
。 - glglgl