TL;DR — Quick Summary
Bottom (btm) is a graphical system monitor for the terminal written in Rust. CPU, memory, network, disk, temperature, and process management with interactive charts.
Bottom gives you real-time graphical system monitoring in the terminal. CPU usage over time, memory trends, network throughput, disk I/O — all as interactive charts you can navigate with keyboard shortcuts.
Installation
# macOS
brew install bottom
# Arch Linux
sudo pacman -S bottom
# Cargo
cargo install bottom --locked
# Ubuntu/Debian (snap)
sudo snap install bottom
# The binary is called 'btm'
btm
Keybindings
| Key | Action |
|---|---|
Tab / Shift+Tab | Switch widgets |
↑ ↓ | Navigate within widget |
Enter | Expand/collapse chart |
e | Expand selected process |
s | Search processes |
dd | Kill selected process |
t | Toggle tree view |
b | Toggle basic/detailed mode |
Ctrl+r | Reset zoom |
/ ? | Help |
q | Quit |
Configuration
~/.config/bottom/bottom.toml:
[flags]
rate = 1000 # Update rate in ms
dot_marker = false # Use braille for charts
temperature_type = "c" # Celsius
tree = true # Default to tree view
hide_avg_cpu = false
[colors]
table_header_color = "LightBlue"
cpu_color = ["Red", "Green", "Blue", "Yellow", "Cyan", "Magenta"]
# Custom layout
[[row]]
[[row.child]]
type = "cpu"
[[row]]
ratio = 3
[[row.child]]
type = "proc"
default = true
Comparison
| Feature | Bottom | htop | top | gotop | glances |
|---|---|---|---|---|---|
| Language | Rust | C | C | Go | Python |
| CPU chart | History | Bar | Text | History | Text |
| Memory chart | History | Bar | Text | History | Text |
| Network | Graph | No | No | Graph | Text |
| Disk I/O | Graph | No | No | No | Text |
| Temperature | Yes | No | No | Yes | Yes |
| Battery | Yes | No | No | Yes | Yes |
| Cross-platform | All | Unix | Unix | Unix | All |
| Process tree | Yes | Yes | No | No | Yes |
Summary
- Bottom (btm) is a graphical terminal system monitor with interactive charts
- Shows CPU, memory, network, disk I/O, temperature, and battery over time
- Process management with search, tree view, and kill capabilities
- Cross-platform: Linux, macOS, Windows, FreeBSD
- Customizable layout, colors, and update rate via config file