开发者们都知道
cat
命令在查看文件内容时的重要性,但你是否想过让它变得更智能、更漂亮?今天就为大家介绍一个用 Rust 实现的开源项目
bat
。
bat
在
cat
的基础上进行了功能强化,它不仅包含了语法高亮,还集成了 Git 功能,并增加了自动分页等特性。接下来,我们将详细介绍如何使用
bat
以及其配置和自定义等方面的内容。
核心功能
语法高亮 :支持多种编程和标记语言;
与 Git 集成 :可以显示文件相对于 Git 索引的修改;
自动分页 :输出内容多时会自动使用分页器;
非交互式终端下的文件连接
:即使设置了分页器,
bat
也能连接文件;
显示不可打印的字符
:通过
-A/ --show-all
选项可显示和高亮非打印字符。
如何使用
# 在终端显示单个文件
bat README.md
# 同时展示多个文件
bat src/*.rs
# 从 stdin 读取并自动判断语法(通过首行如 #!/bin/sh)
curl -s https://sh.rustup.rs | bat
# 从 stdin 读取,并显式指定语言
yaml2json .travis.yml | json_pp | bat -l json
# 高亮显示非打印字符
bat -A /etc/hosts
# 作为 cat 的替代
bat > note.md
bat header.md content.md footer.md > document.md
bat -n main.rs # 只显示行号
bat f - g # 输出 'f', 然后是 stdin,然后是 'g'.
与其他工具的集成
bat
还支持与工具如
find
、
fd
、
fzf
、
ripgrep
和
tail -f
等的集成,更棒的是
bat
可以与
git show
和
git diff
相结合来显示代码更改的旧版本或周围行,且有适当的语法高亮。
安装说明
对于 Ubuntu/Debian :
sudo apt install bat
安装后,可能需要设置一个
bat -> batcat
的链接或别名,避免与其他包的命名冲突。
使用预构建的二进制文件 :可以访问 Release 页面下载适合你系统的预构建版本。
通过源码安装 :需要 Rust 1.70.0 或更高版本,可以用以下命令安装:
cargo install --locked bat
自定义与配置
bat
允许使用者通过配置文件进行自定义,包括但不限于更换高亮主题、添加新的语法定义或主题、改变输出风格等。
下面是一个配置文件的例子:
# 设置主题为 "TwoDark"
--theme="TwoDark"
# 显示行号、Git 修改和文件头(但不显示网格)
-->"numbers,changes,header"
对于
bat
的更高级自定义和详尽的安装、配置方法,请查看项目的
README.md
。
结语
作为一个舒适高效的命令行工具,
bat
不但使得在查看文件内容时拥有了更加友好的用户界面和视觉体验,还提供了丰富的自定义和集成选项,为开发者的日常工作带来了极大的便利。而且,作为一个 Rust 语言项目,它也展现了 Rust 在系统工具开发领域的强大潜力和效率。是否已经想尝试用上这个有翅膀的
cat
了呢?别犹豫,赶快体验一下
bat
带来的飞一般的感觉吧。
文章精选
点 击 关 注 并 扫 码 添 加 进 交 流 群
领
取
「Rust
语
言
」
学
习
资
料
关注公众号并回复 「bat」 立即获取项目地址。