2012-03-16 23 views
8

Khi tôi làm một SELECT trong thông dịch dòng lệnh MySQL của tôi nhận được một bảng ASCII ngọt:Nhận dạng bảng ưa thích của MySQL như stdout

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

Tuy nhiên, nếu tôi ống kết quả một nơi nào đó (ví dụ, echo "SELECT ..." | mysql), tôi nhận được kết quả phân cách bằng tab được phân tách bằng tab cũ.

Làm cách nào để có định dạng bảng ưa thích trong chế độ xuất chuẩn?

Trả lời

22

Bạn có thể sử dụng công tắc -t hoặc --table trên mysql lệnh, ví dụ

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

Cảm ơn! Không có ý tưởng làm thế nào tôi bỏ lỡ điều này trong trang người đàn ông. 1 cho cowsay, quá. –

+3

LOLz @ cowsay ... –

+0

@Christian Mann: +1 ... Làm tốt lắm ...... Vẽ tốt ... Trả lời thông minh .. LOL –

3

Hãy thử điều này:

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

Truy cập bị từ chối cho người dùng aPaidNerd'@'10.32.60.170 ';) –

+0

Vâng ... bạn nên sử dụng tên đăng nhập và mật khẩu của bạn, tất nhiên ... –

+0

như thế nào mà giúp đỡ trong vấn đề nhất định? Đặt đầu ra của bạn thành '| cat' hoặc bất cứ điều gì và bạn sẽ thấy rằng không có bảng - trừ khi bạn proivide '-t' hoặc' --table'. – glglgl

Các vấn đề liên quan