【问题标题】:How do you get table-formatted output from MySQL in non-interactive mode? [duplicate]如何在非交互模式下从 MySQL 获取表格格式的输出? [复制]
【发布时间】:2011-01-14 16:21:42
【问题描述】:

我喜欢 mysql 客户端程序在交互模式下生成的表输出,但如果我尝试像这样运行 sql 脚本:

mysql -uroot mydb < myscript.sql

我只得到制表符分隔的输出。

mysql -uroot mydb -e 'select * from mytable'

确实会以所需的表格格式生成输出。

如何获得第一个命令来生成表格格式的输出?我不想要 HTML 输出,而是输出带有对齐的列和标题的终端字符。

【问题讨论】:

  • 感谢发帖,我也需要同样的东西。我也为此使用术语“非交互”模式,但我不知道它是否是一个广泛使用的术语。我想知道这种执行形式(即直接来自 shell)是否还有其他名称 - 批处理模式?

标签: mysql


【解决方案1】:

-t 选项添加到mysql(表)。

  mysql -t -uroot mydb < myscript.sql

  mysql -t -uroot mydb -e 'select * from mytable'

【讨论】:

    【解决方案2】:

    在运行查询之前使用 \P less -S 选项

    mysql> \P less -S
    

    PAGER 设置为 'less -S'

    【讨论】:

    • 你博客上的答案很简短;您基本上已经将整个内容都包含在此处,因此链接到您的博客也似乎是垃圾邮件。此外,您没有透露您链接的博客是您的博客。我删除了链接;在发布任何指向您博客的更多链接之前,请阅读关于自我提升的常见问题解答。您可以在此处将您的博客链接放在您的个人资料中;不过,Stack Overflow 并不意味着通过答案为您的博客做广告。
    • 听起来不错。感谢您的澄清
    猜你喜欢
    • 2012-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-21
    • 2019-08-27
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    相关资源
    最近更新 更多