Linux 查看文件内容——bat 命令

休言女子非英物,夜夜龙泉壁上鸣。这篇文章主要讲述Linux 查看文件内容——bat 命令相关的知识,希望能为你提供帮助。
whats the bat
工作中使用  ??cat??  的频率较高,主要用于显示文本文件的具体内容。
但  ??cat??  命令两个很重大的缺陷:

  1. 不能语法高亮输出
  2. 文本太长的话无法翻页输出。
所以  ??cat???  一般只用来查看行数不多的小文件,大文件需要用到  ??head、tail??  等命令。
国外有大牛将  ??cat???  命令进行了增强,开发了更好用的  ??bat??  命令。
 
??bat??  主要功能:
  1. 语法高亮——支持根据编程语言以及 markdown 语法将文本关键词高亮,可阅读性大大增强;
  2. 自动翻页——如果文本内容太长,超过一页的话,它会自动将内容通过管道传到??less??  命令,实现翻页的效果;
  3. 集成Git——??bat??  命令跟 git 完美结合,将文本的修改部分在左侧展示,一眼就可以看出文件修改了啥。
  4. 显示不可打印字符——有些字符无法通过??cat??  在屏幕上显示
安装
sudo apt-get install bat

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

 
使用方法
基本使用
??bat???  命令的用法跟  ??cat???  基本相同,除了输出与  ??cat???  一样的文本内容之外,还能输出包括行数、文件名、表格外框等元素。如果行数比较多,还可以使用  ??--line-range??  来显示指定行数的内容
 
语法高亮
??bat??  对大部分编程语言和标记语言提供语法高亮,可读性更强。
查看所有支持的语言
bat --list-languages

 
Git 集成
??bat??  能从 git 中获取文件的修改并展示在边栏
 
显示不可打印字符
有时候文本里有一些不可显示的字符,如果使用  ??cat???  命令查看的话,将看不到这些字符。但如果使用  ??bat???  命令,加上  ??-A???  或者  ??-show-all??  参数就能看到。
bat -A xxx.txt

 
自动翻页功能
??cat???  命令不管文本大小全部显示出来,使得在需要查看内容比较多的文本文件的时候,必须选择其它命令(比如  ??more???  、??less??  等等)。
??bat???  命令在文本内容超过一屏可显示范围时,就会将其发送到  ??less???  命令,然后就可以像使用  ??less???  一样进行翻页操作。如果不想使用翻页功能,可以使用  ??--paging=never??  参数关闭。
 
主题定制
??bat??  命令支持多种风格的语法高亮主题,可以满足大部分需求。
查看  ??bat??  支持的所有主题
bat --list-themes

 
如果想指定主题为  ??GitHub??  ,可以使用以下命令
bat --theme=GitHub 文件名

 
但这样做是临时的,关闭终端工具或者系统重启,主题就会恢复默认。可以通过设置  ??BAT_THEME??  环境变量来选定主题。
把  ??export BAT_THEME="GitHub"??  添加到 shell 的启动脚本来取得永久效果。除此之外,还可以自定义输出样式,甚至可以自己添加新的语言和语法,输出让自己满意的高亮样式。
 
 
   
【Linux 查看文件内容——bat 命令】


    推荐阅读