Linux文本新宠:别再用cat,转投bat的怀抱吧!

在 Linux 操作系统中,有许多强大的命令行工具,它们为用户提供了广泛的功能和灵活性。其中之一就是 bat 命令,这是一个用于查看文件内容的工具,被许多用户认为是 cat 命令的增强版本。本文将深入探讨 bat 命令的详细使用方法和功能。

linux-bat.jpg

什么是 bat ?

bat 实际上是 cat 命令的一个增强版本,它具有语法高亮、行号显示、Git 集成等功能,使得在终端中查看代码或文本文件更加友好和方便。bat 使用 Rust 编写。其在github上已有45k star 。

github地址:https://github.com/sharkdp/bat

_20240204101330.jpg

安装 bat

在许多 Linux 发行版中,bat 可以通过包管理器直接安装。bat从20.04开始在Ubuntu上提供("Focal"),从2021年8月开始在Debian上提供(Debian 11-"Bullseye")。例如,在 Ubuntu 上,可以使用以下命令进行安装:

复制代码
sudo apt install bat

重要提示: 如果以这种方式安装bat,请注意,可执行文件可能会安装为batcat ,而不是bat(由于名称与另一个软件包冲突)。这种情况我们使用的命令是batcat。

我的服务器使用的是ubuntu22.04,使用的是这种安装方式。

如果你使用的是其他发行版,可以查看其官方文档或使用相应的包管理器进行安装。

_20240204140737.png

用法

batcat 最引人注目的特性之一就是其强大的语法高亮功能。无论是查看代码还是其他文本文件,batcat 都能够根据文件的类型自动应用适当的语法高亮。这样,代码结构将更加清晰,易于阅读和理解。在默认情况下,batcat 会显示文件中每一行的行号。这对于快速定位和引用文件中的特定行非常有帮助。

基本用法

使用 batcat 的基本语法类似于 cat 命令。例如,要查看一个文件的内容,可以执行以下命令:

复制代码
batcat filename

_20240204223804.jpg

多文件浏览

csharp 复制代码
 batcat package.json  yarn.lock

_20240204230139.jpg

分页浏览

batcat 允许用户按页查看文件,这对于长文本文件特别有用。可以使用空格键或者PGUP\PGDN进行翻页,按 q 键退出查看。

JSON格式美化

go 复制代码
batcat package.json

_20240204225154.jpg

远程内容格式化

arduino 复制代码
curl -s  http://blog.xiuji.mynatapp.cc/interview/index.html | batcat

_20240204225929.jpg

Git 集成

batcat 还支持 Git 集成,能够显示文件的 Git 信息,比如文件是否被修改过等。这对于查看版本控制下的文件非常有用。

复制代码
batcat -d README.md

_20240204230655.jpg

总结

总的来说,bat 是一个功能强大且易于使用的命令行工具,为 Linux 用户提供了更好的文件查看体验。其语法高亮、行号显示和 Git 集成等特性使得在终端中查看代码和文本文件变得更加舒适和高效。通过学习和掌握 bat,你将能够更加愉快地处理各种文本文件,提高工作效率。

相关推荐
用户311879455921821 小时前
Kylin Linux 10 安装 glib2-devel-2.62.5-7.ky10.x86_64.rpm 方法(附安装包)
linux
涛啊涛1 天前
Centos7非LVM根分区容量不足后扩容,对调硬盘挂载/
linux·磁盘管理
CYRUS_STUDIO2 天前
用 Frida 控制 Android 线程:kill 命令、挂起与恢复全解析
android·linux·逆向
熊猫李2 天前
rootfs-根文件系统详解
linux
dessler2 天前
Hadoop HDFS-高可用集群部署
linux·运维·hdfs
泽泽爱旅行2 天前
awk 语法解析-前端学习
linux·前端
轻松Ai享生活3 天前
5 节课深入学习Linux Cgroups
linux
christine-rr3 天前
linux常用命令(4)——压缩命令
linux·服务器·redis
三坛海会大神5553 天前
LVS与Keepalived详解(二)LVS负载均衡实现实操
linux·负载均衡·lvs
東雪蓮☆3 天前
深入理解 LVS-DR 模式与 Keepalived 高可用集群
linux·运维·服务器·lvs