Bat
bat #
类似cat
命令,但带有 git 集成和语法高亮。
cat是unix系统下用来检视档案连续内容用的指令,字面上的含意是“concatenate”(连续)的缩写。除了用来作为显示档案内容外,cat指令也可用于标准串流上的处理,如将显示的讯息转入或附加另一档案上。
主要功能 •
使用方法 •
安装 •
自定义 •
项目目标和替代方案
语法高亮 #
bat
对大部分编程语言和标记语言提供语法高亮:
Git 集成 #
bat
能从 git 中获取文件的修改并展示在边栏(见下图):
不可打印(non-printable)字符可视化 #
添加-A
/--show-all
参数可以文件文件中的不可打印字符:
自动分页 #
bat
会在一般情况下将大于屏幕可显示范围的内容输出到分页器(pager, e.g. less
)。
你可以在调用时添加--paging=never
参数来使bat
不使用分页器(就像cat
一样)。如果你想要用为cat
使用bat
别名,可以在 shell 配置文件(shell configuration)中添加alias cat='bat --paging=never'
。
智能输出 #
bat
能够在设置了分页器选项的同时进行管道:wink:。
当bat
检测到当前环境为非可交互终端或管道时(例如使用bat
并将内容用管道输出到文件),bat
会像cat
一样,一次输出文件内容为纯文本且无视--paging
参数。
如何使用 #
在终端中查看一个文件
> bat README.md
一次性展示多个文件
> bat src/*.rs
从stdin
读入流,自动为内容添加语法高亮(前提是输入内容的语言可以被正确识别,通常根据内容第一行的 shebang 标记,形如#!bin/sh
)
> curl -s https://sh.rustup.rs | bat
显式指定stdin
输入的语言