繁体   English   中英

在Bash中解析MySQL输出

[英]Parsing MySQL output in Bash

如何将表边框的mysql查询输出重定向为分隔符? 我尝试使用此代码:

mysql -u root -h localhost -D cronjob -e "select * from cron_list" > query.txt

我期望输出如下:

| id |  datetime  | recurrency |          command          |
|  1 | 2014-10-10 |    daily   | bash /media/data/daily.sh |
|  2 | 2014-10-09 |  minutely  |           conky           |

但是,当我使用该代码时,它会给我输出

 id   datetime   recurrency           command          
  1  2014-10-10     daily    bash /media/data/daily.sh 
  2  2014-10-09   minutely             conky           

那么,如何将终端的输出重定向到带终端的分隔符的文件? 抱歉英文不好

来自man mysql

--table,-t

以表格格式显示输出。 这是交互式使用的默认设置,但可用于以批处理模式生成表输出。

注意-t是默认行为,但不管何时管道到文件。 这就是为什么在这种情况下你必须明确。


其他有趣的选项,适用于其他类型的输出:

--silent,-s

静音模式。 产量减少。 可以多次给出此选项以产生越来越少的输出。

此选项会导致非常规输出格式和特殊字符的转义。 可以使用原始模式禁用转义; 请参阅--raw选项的说明。

--skip-column-names ,-N

不要在结果中写入列名。

--html,-H

生成HTML输出。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM