bat
A cat(1) clone with wings.
TL;DR · 30-second scan
bat (Rust) — A cat(1) clone with wings.
You read code and config files in the terminal and want highlighting without opening an editor.
CLI & Dev Tools
A replacement for cat with syntax highlighting, git change markers in the gutter, line numbers and automatic paging. It is a small tool that improves a thing you do fifty times a day, which is a better return than most large tools. Rust, Apache-2.0, from the author of fd and hyperfine, so the quality bar is consistent. The tradeoff is that it is not a drop-in replacement despite looking like one: it detects when output is piped and behaves like cat then, but aliasing cat to bat will still surprise scripts and other people on shared machines. Alias it to something else, or accept the occasional confusion.
You read code and config files in the terminal and want highlighting without opening an editor.
You need cat's exact behaviour in scripts, or you cannot install extra binaries on the machines you use.
Add this badge to your README to show your project is curated on StackPicks. Free, lightweight (180×28 SVG), and gives your visitors a one-click way to see honest take + alternatives.
[](https://stackpicks.dev/repo/sharkdp-bat)
<a href="https://stackpicks.dev/repo/sharkdp-bat"><img src="https://stackpicks.dev/api/badge/sharkdp-bat" alt="Featured on StackPicks" width="180" height="28" /></a>
Are you the maintainer of sharkdp/bat? Add the badge and we'll feature your project in the weekly curator newsletter.