Top 14 Rust‑Powered CLI Tools to Supercharge Your Linux Workflow
Discover a curated collection of fourteen Rust‑based command‑line alternatives—including lsd, broot, zoxide, fzf, ripgrep, procs, diff‑so‑fancy, delta, mcfly, choose, httpie, curlie, xh, and dog—each with installation instructions, key features, and practical usage examples to boost productivity on Linux and other platforms.
1. lsd
lsd is a Rust‑written replacement for the traditional ls command, adding colorful output, icons, tree view, and extra formatting options. It runs on Arch Linux, Fedora, macOS, FreeBSD, Windows, Android, Ubuntu, Debian and more.
# curl -LO https://github.com/Peltoche/lsd/releases/download/0.21.0/lsd_0.21.0_amd64.deb
# dpkg -i lsd_0.21.0_amd64.deb2. broot
broot is another Rust‑based ls alternative that provides a novel way to view and navigate directory trees, effectively acting as a terminal file manager.
Features:
Overview of large directories
Quick cd into a selected directory
Preserves hierarchical structure during search
File preview and management
Custom shortcuts for files
Can replace ls Shows disk usage sorting
Git status integration
Usage example:
# br -sdph3. zoxide
zoxide replaces cd with a smarter, history‑driven navigation tool that remembers frequently visited directories. # zoxide /etc After using zoxide in /etc, you can type z e to jump directly to that directory.
# z e4. fzf
fzf is a fast, dependency‑free fuzzy finder for any list, file set, command history, process list, hostname, bookmark, or Git commit. It works on many Linux distributions.
# curl -LO http://cn.archive.ubuntu.com/ubuntu/pool/universe/f/fzf/fzf_0.24.3-1_amd64.deb
# dpkg -i fzf_0.24.3-1_amd64.debIt pairs well with fd (a find replacement). To locate files containing "debug", run:
# find . -type f | fzf5. ripgrep (rg)
ripgrep is a line‑oriented search tool that recursively searches for regex patterns, offering speed advantages over grep, git‑grep, ugrep, The Silver Searcher, and ack. # apt install ripgrep Example: find all .sh files containing the string "yum".
# rg yum *.sh
9:cd /etc/yum.repos.d/
22:yum clean all
23:yum makecache
25:echo "本地yum仓库已经创建完成!"6. procs
procs is a Rust‑based ps replacement that provides colored, multi‑column output with keyword search.
Installation:
Arch Linux: # sudo pacman -S procs Fedora: # sudo dnf install procs RPM:
# sudo rpm -i https://github.com/dalance/procs/releases/download/v0.12.1/procs-0.12.1-1.x86_64.rpmRun procs to list all processes. Use options like --and, --or, --nand, --nor for logical filtering.
7. diff‑so‑fancy
diff‑so‑fancy is a Node‑based pretty‑printer for git diff, improving readability and helping spot defects. # npm install -g diff-so-fancy Use it with Git: # git diff --color | diff-so-fancy Configure Git to use it as the default pager:
# git config --global core.pager "diff-so-fancy | less --tabs=4 -RFX"
# git config --global interactive.diffFilter "diff-so-fancy --patch"8. delta
delta is a syntax‑highlighting pager for Git, diff, and grep output, offering side‑by‑side views, line numbers, merge‑conflict display, and more.
Features:
Color‑themed syntax highlighting
Highlights output from rg, git grep, grep
Side‑by‑side view with line wrapping
Shows line numbers
Merge‑conflict visualization
Supports --color-moved n/N key bindings to jump between files in large diffs
Copy code directly from diffs
Installation instructions are available in the delta manual.
9. mcfly
mcfly replaces the Ctrl+R reverse‑history search with a full‑screen, Rust‑based, fast and safe interface.
Features:
Bind Ctrl+R for fullscreen history search
Rust implementation ensures speed and safety
Use % as a wildcard for any number of characters
Maintains a normal shell history file for fallback
Can purge entries from its own database or the shell history
10. choose
choose is a modern alternative to cut, offering concise syntax similar to Python slicing, zero‑based and negative indexing, and optional start/end indices.
Features:
Simplified field selection syntax
Negative indices count from the end
Optional start/end indices
Zero‑based indexing
Reverse ranges
Faster than cut on long inputs and much faster than awk Uses Rust regex syntax for field delimiters
Example with cut:
# cat 2022.txt | cut -d " " -f 1
or
# cut -d " " -f 1 2022.txtEquivalent choose usage:
# cat 2022.txt | choose 1
or
# choose 1 -i 2022.txt11. httpie
httpie is a user‑friendly HTTP client that improves upon curl with a simpler syntax, formatted and colored output, and built‑in support for JSON.
# curl -X PUT -d hello=world example.com # http PUT example.com hello=world # http PUT pie.dev/put X-API-Token:123 name=John # http --offline pie.dev/post hello=offline12. curlie
curlie combines the ergonomics of httpie with the full feature set of curl, keeping curl’s syntax while presenting output like httpie.
# curlie httpbin.org/headers # curlie -v PUT httpbin.org/status/201 X-API-Token:123 name=John13. xh
xh is a fast, friendly HTTP client written in Rust, offering HTTP/2 support, curl‑compatible flags, and concise help output.
# xh httpbin.org/json # xh httpbin.org/post name=ahmed age:=24 # xh get httpbin.org/json id==5 sort==true # xh get httpbin.org/json x-api-key:66666 # xh put httpbin.org/put id:=49 age:=24 | less # xh -d httpbin.org/json -o test.json # xh httpbin.org/get user-agent:foobar14. dog
dog is an open‑source DNS client that serves as a colorful alternative to dig, supporting UDP, TCP, DoT, and DoH across many record types.
# dog example.net
# dog example.net MX
# dog example.net MX @x.x.x.x
# dog example.net MX @x.x.x.x -TReferences
ls – https://wangchujiang.com/linux-command/c/ls.html
lsd – https://github.com/Peltoche/lsd
broot – https://github.com/Canop/broot
exa – https://github.com/ogham/exa
zoxide – https://github.com/ajeetdsouza/zoxide
fzf – https://github.com/junegunn/fzf
fd – https://github.com/sharkdp/fd/
ripgrep – https://github.com/BurntSushi/ripgrep
ag – https://github.com/ggreer/the_silver_searcher
procs – https://github.com/dalance/procs
diff‑so‑fancy – https://github.com/so-fancy/diff-so-fancy
delta – https://github.com/dandavison/delta
mcfly – https://github.com/cantino/mcfly
choose – https://github.com/theryangeary/choose
cut – https://wangchujiang.com/linux-command/c/cut.html
httpie – https://github.com/httpie/httpie
curlie – https://github.com/rs/curlie
xh – https://github.com/ducaale/xh
dog – https://github.com/ogham/dog
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Liangxu Linux
Liangxu, a self‑taught IT professional now working as a Linux development engineer at a Fortune 500 multinational, shares extensive Linux knowledge—fundamentals, applications, tools, plus Git, databases, Raspberry Pi, etc. (Reply “Linux” to receive essential resources.)
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
