2012-03-16 36 views
8

当我做一个SELECT在MySQL的命令行解释器,我得到一个甜蜜的ASCII表:获得MySQL的花式球台的格式标准输出

 
+----+------+ 
| id | name | 
+----+------+ 
| 1 | Bob | 
| 2 | Mary | 
| 3 | Jane | 
| 4 | Lisa | 
+----+------+ 

但是,如果我管结果的地方(例如,echo "SELECT ..." | mysql),我得到一个无聊的旧制表符分隔的结果。

如何在标准输出中获得奇特的表格格式?

回答

22

可以使用-t--table交换机上的mysql命令,例如

$ echo "SELECT ..." | mysql -t | cowsay -n 
_______________ 
/+----+------+ \ 
| | id | name | | 
| +----+------+ | 
| | 1 | Bob | | 
| | 2 | Mary | | 
| | 3 | Jane | | 
| | 4 | Lisa | | 
\ +----+------+/
--------------- 
     \ ^__^ 
     \ (oo)\_______ 
      (__)\  )\/\ 
       ||----w | 
       ||  || 
+2

谢谢!不知道我是如何在手册页中错过的。 +1也适用于Cowsay。 – 2012-03-16 23:04:43

+3

LOLZ @ cowsay ... – 2012-03-16 23:06:11

+0

@Christian Mann:+1 ...良好的工作......良好的抽奖......聪明的答案..哈哈 – 2012-03-16 23:11:05

3

尝试这种情况:

$ mysql -uyourUsername -pyourPassword -te 'SELECT * FROM aTable' aDatabase 
+----+------+ 
| id | name | 
+----+------+ 
| 1 | Bob | 
| 2 | Mary | 
| 3 | Jane | 
| 4 | Lisa | 
+----+------+ 
+0

访问被拒绝的用户“aPaidNerd'@'10.32.60.170”;) – 2012-03-16 23:05:02

+0

嗯......你应该用你的用户名和密码,当然... – 2012-03-16 23:07:05

+0

如何做在给定的问题帮助?将输出管道输入到'|猫“或其他什么,你会看到没有表 - 除非你提供'-t'或'--table'。 – glglgl 2012-03-16 23:37:09