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输入的语言 > yaml2json .travis.yml | json_pp | bat -l json 显示不可打印字符 ...