Làm chủ editor với triết lý “Zero Mouse” đã giúp bạn tiết kiệm hàng trăm thao tác thừa mỗi ngày. Bước tiếp theo để hoàn thiện quy trình làm việc tốc độ cao chính là tối ưu môi trường làm việc không thể thiếu của mọi developer: Terminal.
Các câu lệnh Linux cốt lõi như cat, ls, hay grep đã phục vụ tốt thế giới lập trình suốt nhiều thập kỷ. Tuy nhiên, chúng ra đời trong thời kỳ thiết bị đầu cuối còn hạn chế về màu sắc và hiển thị. Ngày nay, một thế hệ công cụ CLI hiện đại—phần lớn được viết bằng Rust—mang lại tốc độ tính bằng mili-giây, giao diện trực quan và tích hợp Git thông minh ngay từ dòng lệnh đầu tiên.
Dưới đây là 3 công cụ thay thế chuẩn mực bạn nên cài đặt ngay trong tuần này.
1. bat thay thế cho cat: Đọc code trên Terminal với cú pháp rực rỡ
Lệnh cat kinh điển chỉ in toàn bộ nội dung file ra màn hình dưới dạng một khối văn bản đơn sắc. Khi cần xem nhanh một file cấu hình hay một đoạn logic dài, mắt bạn rất dễ bị “mỏi” và lạc dòng.
bat (A cat clone with wings) giải quyết triệt để vấn đề này:
- Syntax Highlighting tự động: Nhận diện đuôi file để tô màu cú pháp chuẩn xác cho hầu hết ngôn ngữ phổ biến (JS, Python, Rust, Markdown, YAML…).
- Tích hợp sẵn Git Diff: Hiển thị vạch màu xanh/đỏ ở mép lề trái để báo hiệu dòng code nào vừa được thêm mới hoặc sửa đổi so với commit gần nhất.
- Tự động phân trang: Tương thích với
less, không bao giờ tràn hàng nghìn dòng làm đơ màn hình Terminal.
Bash:
# Xem file với số dòng và màu cú pháp
bat server.js
# Hoặc dùng để pipe đầu ra từ curl/API
curl -s https://api.sampleapis.com/coffee/hot | bat -l json
2. eza thay thế cho ls: Danh sách thư mục có Icon và trạng thái Git
eza (bản kế thừa hoàn hảo của dự án exa) đưa trải nghiệm duyệt thư mục từ thập niên 70 lên tiêu chuẩn hiện đại:
- Mã màu và Icon trực quan: Phân biệt rõ ràng giữa file thực thi, thư mục, symlink và file ẩn thông qua icon đồ họa.
- Trạng thái Git theo thời gian thực: Với cờ
--git, bạn sẽ thấy file nào đang ở trạng tháiModified (M),Untracked (?)hayStagedmà không cần gõ thêmgit status. - Cây thư mục tích hợp: Thay thế luôn lệnh
treephức tạp bằng cú pháp ngắn gọneza --tree.
Bash:
# Hiển thị chi tiết theo danh sách kèm trạng thái Git
eza -lah --git
# Xem cấu trúc thư mục 2 tầng kèm icon
eza --tree --level=2 --icons
3. ripgrep (rg) thay thế cho grep: Tìm kiếm text xuyên dự án với tốc độ phần cứng
Nếu bạn từng phải chờ 15 giây để grep rà soát một chuỗi text trong project vì nó lỡ quét luôn cả thư mục khổng lồ node_modules hoặc .git, thì ripgrep là vị cứu tinh.
- Bỏ qua file rác theo mặc định:
rgtự động đọc file.gitignorevà bỏ qua các folder rác, file nhị phân, giúp thời gian tìm kiếm giảm từ vài giây xuống vài mili-giây. - Tận dụng tối đa đa nhân CPU: Tối ưu hóa thuật toán song song bằng Rust, vượt xa hiệu năng của
grepvàag(The Silver Searcher). - Cú pháp ngắn gọn: Không cần thêm cờ
-rnwrườm rà.
Bash:
# Tìm kiếm từ khóa 'processOrder' trong toàn bộ project
rg "processOrder"
# Chỉ tìm trong các file JavaScript
rg "processOrder" -t js
Bảng đối chiếu lệnh cũ & mới
| Thao tác | Lệnh truyền thống | Công cụ hiện đại | Điểm nâng cấp vượt trội |
| Xem nội dung file | cat | bat | Tô màu syntax, đánh số dòng, hiển thị Git diff |
| Liệt kê file/folder | ls | eza | Hiển thị icon, quyền hạn dạng màu, trạng thái Git |
| Tìm kiếm văn bản | grep | ripgrep (rg) | Tự động loại bỏ .gitignore, tốc độ tiệm cận tức thì |
Cài đặt nhanh
Tùy hệ điều hành bạn sử dụng, chỉ cần một dòng lệnh duy nhất:
- macOS (Homebrew):
brew install bat eza ripgrep
- Ubuntu/Debian:
sudo apt install bat ripgrep
# eza cài qua kho apt riêng của tác giả
- Windows (Scoop / Winget):
winget install sharkdp.bat eza-community.eza BurntSushi.ripgrep.MSVC
Mẹo nhỏ: Hãy gán Alias trong file
.bashrchoặc.zshrc(alias cat='bat',alias ls='eza') để sử dụng công cụ mới một cách tự nhiên mà không cần thay đổi thói quen gõ phím cũ.
Hãy thử cài đặt bộ ba công cụ trên để bắt đầu tuần làm việc tiếp theo với một chiếc Terminal hoàn toàn mới mẻ và mượt mà!


