Modern CLI Tools Collection
Modern CLI Tools Collection
Modern Rust-based and improved alternatives to classic Unix commands - faster, prettier, and more user-friendly.
Based on NetworkChuck's "37 INSANE Linux Commands" video.
File Navigation
exa / eza - Better ls
Better color coding, tree view, Git integration, icons.
bash# Install brew install eza # exa is deprecated, use eza # Basic usage (replaces ls) eza # With icons eza --icons # Tree view eza --tree # Git status integration eza --git # Long format with Git + icons eza -l --git --icons
Alias:
bashalias ls='eza --icons' alias ll='eza -l --git --icons' alias tree='eza --tree'
fd - Better find
Faster, better defaults, colored output.
bash# Install brew install fd # Find files (case-insensitive by default) fd pattern # Find in specific directory fd pattern /path/to/search # Execute command on results fd '\.txt$' -x cat {} # Ignore hidden files (default), include with -H fd -H pattern
zoxide - Smarter cd
Jump to frequently/recently used directories.
bash# Install brew install zoxide # Add to shell (in ~/.zshrc) eval "$(zoxide init zsh)" # Usage z downloads # Jump to most frecent "downloads" directory zi # Interactive selection with fzf
Already in your workflow! Just use z more.
Ranger - TUI File Manager
Vim-like file browser in terminal.
bash# Install brew install ranger # Launch ranger # Navigate: h/j/k/l (Vim keys) # Preview files: i # Bulk rename: :bulkrename
System Monitoring
procs - Better ps
Prettier process list with colors and tree view.
bash# Install brew install procs # View all processes procs # Sort by CPU procs --sortd cpu # Tree view procs --tree # Search processes procs nginx
glances - All-in-One Dashboard
System stats dashboard (CPU, RAM, disk, network).
bash# Install brew install glances # Launch glances # Run as web server glances -w # Open http://localhost:61208
iotop - Disk I/O Monitor
See what's hammering your disk.
bash# Install (Linux only) sudo apt install iotop # Run sudo iotop # Sort by I/O sudo iotop -o
dstat - Combined Stats
CPU, RAM, disk, network in one timeline.
bash# Install brew install dstat # Basic dstat # Top CPU processes dstat --top-cpu # Advanced dstat -cdngy # c=cpu, d=disk, n=network, g=page, y=system
Disk Usage
ncdu - Visual Disk Usage
Interactive disk usage analyzer - delete files right there.
bash# Install brew install ncdu # Analyze current directory ncdu # Analyze specific path ncdu /var/log # Navigation: # j/k - Move up/down # Enter - Drill into directory # d - Delete selected file/folder # q - Quit
Much better than du -sh *
duf - Prettier df
Shows drive usage with color-coding.
bash# Install brew install duf # Show all drives duf # Specific mount duf /home
Network Tools
dog - Better dig
DNS lookups with color.
bash# Install brew install dog # Basic query dog example.com # Specific record type dog example.com MX # DNS over TLS dog example.com @1.1.1.1 --tls # JSON output dog example.com --json
mtr - Ping + Traceroute
Live latency/packet loss per hop.
bash# Install brew install mtr # Run (requires sudo on macOS) sudo mtr google.com # Report mode (non-interactive) mtr --report google.com
termshark - Wireshark in Terminal
TUI packet analyzer.
bash# Install brew install termshark # Capture on interface termshark -i en0 # Read pcap file termshark -r capture.pcap # Filter (like Wireshark) # Press / to filter # Example: dns, http, tcp.port==80
Mouse support - click around, expand packets.
File Transfer
wormhole - Magic File Transfer
P2P encrypted file transfer with one command.
bash# Install brew install magic-wormhole # Send file wormhole send file.zip # Returns code: 7-guitarist-revenge # Receive (on other machine) wormhole receive 7-guitarist-revenge
Peer-to-peer or relay-based. Just works.
rsync - Smart Sync
Delta-only transfers, resume broken transfers.
bash# Sync directories rsync -avz source/ dest/ # Over SSH rsync -avz -e ssh source/ user@server:/path/ # Resume broken transfer (automatic with -a) rsync -avz --partial source/ dest/ # Dry run (show what would change) rsync -avzn source/ dest/
Data Processing
jq - JSON Processor
Parse and transform JSON from CLI.
bash# Install brew install jq # Pretty-print JSON curl api.com/data | jq '.' # Extract field curl api.com/data | jq '.results[0].name' # Filter array jq '.[] | select(.status == "active")' data.json # Transform structure jq '.items | map({id, name})' data.json
ripgrep (rg) - Better grep
Already in your workflow! You use this.
bash# Search recursively rg pattern # Case-insensitive rg -i pattern # File type filter rg -t python 'def ' # Show context rg -C 3 pattern
Utilities
fzf - Fuzzy Finder
Already integrated with Yazi!
bash# Fuzzy find files fzf # Preview while searching fzf --preview 'cat {}' # Use in scripts vim $(fzf) # Search history Ctrl-R (if fzf integrated)
unp - Universal Unpacker
Extract any archive type.
bash# Install brew install unp # Auto-detect and extract unp archive.tar.gz unp file.zip unp package.deb unp anything.7z
No more remembering tar xzvf vs tar xjvf.
moreutils Collection
Useful utilities: ts, errno, vidir, vipe, ifdata.
bash# Install brew install moreutils # Add timestamps to output long-running-command | ts # Edit directory names in text editor vidir /path/to/dir # Insert editor in pipeline echo "data" | vipe | process # Network interface stats (simpler than ifconfig) ifdata -p eth0
Security
shred - Secure Delete
Overwrite files before deletion (thwart recovery).
bash# Shred file (multiple passes) shred -vfz -n 10 sensitive-file.txt # Shred and remove shred -vfzu sensitive-file.txt
Note: SSDs make this less effective (wear leveling).
Task Management
taskwarrior - CLI Task Manager
Full-featured task management from terminal.
bash# Install brew install task # Add task task add Write article about Linux commands # List tasks task list # Complete task task 1 done # Filter by project task project:midimaze list # Due dates task add Due article tomorrow due:tomorrow
System Analysis
lsof - List Open Files
Find what's using a port or file.
bash# What's on port 8080? lsof -i :8080 # What files is process using? lsof -p 1234 # What's using /var/log? lsof /var/log
systemd-analyze - Boot Analysis
Linux boot performance.
bash# Boot time breakdown systemd-analyze blame # Critical path systemd-analyze critical-chain # Visualize (creates SVG) systemd-analyze plot > boot.svg
ipcalc - Subnet Calculator
Quick subnet math.
bash# Install brew install ipcalc # Calculate subnet ipcalc 10.0.0.0/24 # Get range, broadcast, etc ipcalc 192.168.1.0/24
Terminal Recording
asciinema - Record Terminal
See dedicated asciinema - Terminal Session Recording article.
bashasciinema rec demo.cast # Do stuff # Ctrl-D to stop asciinema play demo.cast
agg - Convert to GIF
Turn asciinema recordings into GIFs.
bashcargo install --git https://github.com/asciinema/agg agg demo.cast demo.gif
Docker Management
lazydocker - Docker TUI
See dedicated Lazy Docker article.
bashlazydocker # Visual container management # Mouse support # Real-time stats
Comparison Chart
| Task | Old Tool | New Tool | Key Benefit |
|---|---|---|---|
| List files | ls | eza | Icons, Git status, tree |
| Find files | find | fd | Faster, better defaults |
| Change dir | cd | zoxide | Jump to frecent dirs |
| Search text | grep | rg | Much faster |
| Process list | ps | procs | Color, tree view |
| Disk usage | du | ncdu | Interactive, delete files |
| DNS lookup | dig | dog | Color, DoT support |
| JSON parse | sed/awk | jq | Purpose-built |
| Extract archive | tar/unzip | unp | Auto-detect format |
Installation Quick Start
macOS (all at once):
bashbrew install eza fd zoxide ripgrep procs ncdu duf dog mtr \ termshark magic-wormhole jq moreutils task lazydocker \ asciinema
Update aliases:
bash# In ~/.config/zsh/conf.d/10-aliases.zsh alias ls='eza --icons' alias ll='eza -l --git --icons' alias cat='bat' # Also install: brew install bat alias find='fd' alias grep='rg'
Links
NetworkChuck Video: 37 INSANE Linux Commands
- URL: https://www.youtube.com/watch?v=6P-vjgPx9ww
- Summary: Comprehensive overview of modern CLI tools
- Related: asciinema - Terminal Session Recording, Lazy Docker, Mosh - Mobile Shell
Modern Unix (GitHub)
- URL: https://github.com/ibraheemdev/modern-unix
- Summary: Curated list of modern Unix tool replacements
- Related: All tools listed above