比cat更好用的命令!
cat
这个命令不陌生。它主要的功能就是用来显示文本文件的具体内容。cat
命令两个很重大的缺陷:1. 不能语法高亮输出;2. 文本太长的话无法翻页输出。正是这两个不足,使得 cat
只能用来查看行数不多的小文件。cat
命令这两个缺点,国外有大牛将 cat
命令进行了增强,强大到连 cat
亲妈都不认识!bat
命令。bat
命令可以用来做啥呢?简单来说有下面这些:语法高亮。它可以根据编程语言以及 markdown 语法将文本关键词高亮,可阅读性大大增强; 自动翻页。如果文本内容太长,超过一页的话,它会自动将内容通过管道传到 less
命令,实现翻页的效果;集成Git。 bat
命令跟 git 完美结合,将文本的修改部分在左侧展示,一眼就可以看出文件修改了啥。显示不可打印字符。有些字符无法通过 cat
在屏幕上显示,但bat
让它们无处遁形!
bat
的这些特性,真的是分分钟让 cat
打下神坛!(怪不得人家是以 b
开头的,牛 B 的 B !)1. bat命令的安装
bat
:$ sudo apt-get install bat
bat
命令,而是需要敲 batcat
。为了方便,我们可以设置别名:$ alias "bat=batcat"
2. bat命令的使用
2.1 基本使用
bat
命令的用法跟 cat
大差不差的,我们直接上图来看下对比。bat
命令除了输出与 cat
一样的文本内容之外,还输出了包括行数、文件名、表格外框等元素,看起来信息会更多。--line-range
来显示指定行数的内容。2.2 语法高亮
bat
对大部分编程语言和标记语言提供语法高亮,这样阅读起来就更方便了,可读性更强。--list-languages
参数来显示所有支持的语言:2.3 Git 集成
bat
能从 git 中获取文件的修改并展示在边栏(见下图):2.4 显示不可打印字符
cat
命令查看的话,将看不到这些字符。但如果使用 bat
命令,这些字符就无处遁形。这里需要加上 -A
/--show-all
参数。2.5 自动翻页功能
cat
命令痛点的功能。cat
命令不管文本长度如何,全部一股脑就给你显示出来,使得我们需要查看内容比较多的文本文件的时候,必须选择其它命令(比如 more
、less
等等)。bat
命令很明显是冲着这个痛点来的。它在文本内容超过一屏可显示范围时,就会将其发送到 less
命令,然后我们就可以像使用 less
一样进行翻页操作,非常方便。--paging=never
参数来关闭这个功能。但我估计没人这么做。3. 主题定制
bat
命令支持多种风格的语法高亮主题,可以满足大部分程序员的需求。可以使用下列命令查看 bat
支持的所有主题:$ bat --list-themes
GitHub
,那么可以使用以下命令:$ bat --theme=GitHub 文件名
BAT_THEME
环境变量来选定主题。把 export BAT_THEME="GitHub"
添加到 shell 的启动脚本来取得永久效果。4. 小结
bat
命令真的十分强大,简直是 cat
命令的完美代替品!特别是它的语法高亮、自动翻页功能,简直是对 cat
的精准狙杀。bat
来替代 cat
,相信我,用完之后你就再也回不来了!推荐阅读:
评论