良许Linux教程网 干货合集 比cat更好用的命令!

比cat更好用的命令!

大家好,我是良许。

作为程序员,大家一定都知道 cat 命令。它主要用于显示文本文件的内容。

但是,cat 命令有两个重大缺陷:1. 不能进行语法高亮输出;2. 如果文本太长,无法进行翻页输出。正是这两个不足,使得 cat 只能用来查看行数较少的小文件。

为了解决 cat 命令的这两个缺点,国外有大牛对 cat 命令进行了增强,强大到连 cat 的亲妈都认不出来!

它就是本文的主角:bat 命令。

那么 bat 命令可以用来做什么呢?简单来说有以下几点:

  1. 语法高亮。它可以根据编程语言和 markdown 语法将文本中的关键词高亮显示,提高可读性;
  2. 自动翻页。如果文本内容太长,超过一页,它会自动将内容通过管道传输到 less 命令,实现翻页效果;
  3. 集成 Git。bat 命令与 git 完美结合,可以在左侧显示文本的修改部分,一目了然;
  4. 显示不可打印字符。有些字符无法通过 cat 在屏幕上显示,但 bat 可以让它们现形!

bat 的这些特性真的让 cat 相形见绌!(难怪它以 b 开头,牛 B 的 B!)

1. bat命令的安装

现在很多 Linux 发行版的官方源已经内置了这个命令,所以只需使用它们对应的安装工具就可以安装。

以 Ubuntu 为例,只需要运行以下命令就可以安装 bat

$ sudo apt-get install bat

这里要注意一下,由于名称的冲突,在 Ubuntu 下无法直接通过敲 bat 这三个字母运行 bat 命令,而是需要敲 batcat 。为了方便,我们可以设置别名:

alias "bat=batcat"

2. bat命令的使用

2.1 基本使用

bat 命令的用法跟 cat 大差不差的,我们直接上图来看下对比。

image-20230714213239354
image-20230714213239354

可以看到,bat 命令除了输出与 cat 一样的文本内容之外,还输出了包括行数、文件名、表格外框等元素,看起来信息会更多。

如果行数比较多,还可以使用 --line-range 来显示指定行数的内容。

image-20230714213243425
image-20230714213243425

而且,它还可以跟其它命令通过管道一起结合着用:

image-20230714213248794
image-20230714213248794

2.2 语法高亮

bat 对大部分编程语言和标记语言提供语法高亮,这样阅读起来就更方便了,可读性更强。

而且,你还可以通过使用 --list-languages 参数来显示所有支持的语言:

image-20230714213256176
image-20230714213256176

2.3 Git 集成

bat 能从 git 中获取文件的修改并展示在边栏(见下图):

image-20230714213259803
image-20230714213259803

2.4 显示不可打印字符

有时候文本里有一些不可显示的字符,如果使用 cat 命令查看的话,将看不到这些字符。但如果使用 bat 命令,这些字符就无处遁形。这里需要加上 -A/--show-all 参数。

image-20230714213303162
image-20230714213303162

2.5 自动翻页功能

这应该是直戳 cat 命令痛点的功能。

由于 cat 命令不管文本长度如何,全部一股脑就给你显示出来,使得我们需要查看内容比较多的文本文件的时候,必须选择其它命令(比如 moreless 等等)。

bat 命令很明显是冲着这个痛点来的。它在文本内容超过一屏可显示范围时,就会将其发送到 less 命令,然后我们就可以像使用 less 一样进行翻页操作,非常方便。

image-20230714213307222
image-20230714213307222

当然,如果你想不使用翻页功能的话,也可以使用 --paging=never 参数来关闭这个功能。但我估计没人这么做。

3. 主题定制

bat 命令支持多种风格的语法高亮主题,可以满足大部分程序员的需求。可以使用下列命令查看 bat 支持的所有主题:

$ bat --list-themes
image-20230714213311629
image-20230714213311629

如果你想指定主题为 GitHub ,那么可以使用以下命令:

$ bat --theme=GitHub 文件名

但这样做是临时的,当你关闭终端工具,或者系统重启,主题就会恢复默认。

可以通过设置 BAT_THEME 环境变量来选定主题。把 export BAT_THEME="GitHub" 添加到 shell 的启动脚本来取得永久效果。

除此之外,你还可以自定义输出样式,甚至可以自己添加新的语言和语法,输出让自己满意的高亮样式。但我觉得系统自带的那些样式其实已经可以满足我们大部分需求了,没必要把时间花在这上面。有兴趣的小伙伴可以去看它们的官方文档,有详细的教程。

4. 小结

bat 命令真的十分强大,简直是 cat 命令的完美代替品!特别是它的语法高亮、自动翻页功能,简直是对 cat 的精准狙杀。

如果你经常查看文本,那么可以使用 bat 来替代 cat ,相信我,用完之后你就再也回不来了!

以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

137e00002230ad9f26e78-265x300
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部