Giới Thiệu
Bạn thường xuyên làm việc trong terminal và muốn nâng cao quy trình làm việc của mình? tmux có thể giúp bạn quản lý phiên làm việc, chia cửa sổ, tái sử dụng công việc qua SSH và duy trì năng suất. Trong bài viết này, tôi sẽ hướng dẫn bạn sử dụng tmux như một chuyên gia — từ các khái niệm cơ bản, lệnh, mẹo cấu hình, cho đến các plugin hữu ích.
Mục Lục
- tmux là gì và Tại sao Nên Sử Dụng
- Các Khái Niệm Cơ Bản
- Lệnh tmux Cần Thiết
- Cấu Hình: Thiết Lập
.tmux.conf - Mẹo Nâng Cao & Thực Hành Tốt Nhất
- Các Plugin Tăng Cường tmux
- Kết Luận
tmux là gì và Tại sao Nên Sử Dụng
tmux là một trình đa nhiệm terminal. Nghe có vẻ kỹ thuật, nhưng đơn giản hơn, nó cho phép bạn:
- Chạy nhiều phiên terminal trong một cửa sổ
- Chia một cửa sổ thành các pane
- Ngắt kết nối khỏi một phiên (ví dụ: khi SSH hoặc terminal của bạn bị ngắt) và kết nối lại sau
- Tổ chức các cửa sổ, đặt tên cho chúng, lập trình tương tác, tùy chỉnh bố cục
Nếu bạn từng mất kết nối, muốn chạy nhiều công việc cùng lúc, hoặc quản lý các thiết lập shell phức tạp—tmux sẽ cứu bạn trong lúc khó khăn.
Các Khái Niệm Cơ Bản
Trước khi đi sâu vào lệnh, hãy chắc chắn rằng chúng ta đã nắm vững các khái niệm cơ bản:
- Phiên (Session): Không gian làm việc của bạn. Nghĩa là: một dự án lớn hoặc ngữ cảnh (ví dụ: “backend”, “triển khai”, “dev”).
- Cửa sổ (Window): Trong một phiên, các cửa sổ giống như các tab. Mỗi cửa sổ có thể là một nhiệm vụ riêng biệt.
- Pane: Các phần chia bên trong một cửa sổ. Bạn có thể có nhiều pane bên cạnh nhau hoặc xếp chồng lên nhau.
Ví dụ về bố cục:
Phiên: Công việc
├── Cửa sổ 1: máy chủ
│ ├── Pane 1: nhật ký
│ └── Pane 2: shell
└── Cửa sổ 2: trình soạn thảo
Lệnh tmux Cần Thiết
Dưới đây là các lệnh mà bạn sẽ thường xuyên sử dụng. Prefix mặc định là Ctrl + b (trừ khi bạn thay đổi nó).
| Hành động | Lệnh / Phím tắt |
|---|---|
| Bắt đầu một phiên mới | tmux new -s mysession |
| Gắn kết với một phiên | tmux attach -t mysession |
| Liệt kê các phiên | tmux ls |
| Ngắt kết nối khỏi phiên | Ctrl + b, sau đó d |
| Tạo cửa sổ mới | Ctrl + b, sau đó c |
| Chuyển đổi cửa sổ | Ctrl + b, sau đó 0–9 |
| Đổi tên cửa sổ | Ctrl + b, sau đó , |
| Chia pane theo chiều ngang | Ctrl + b, sau đó " |
| Chia pane theo chiều dọc | Ctrl + b, sau đó % |
| Điều hướng giữa các pane | Ctrl + b + phím mũi tên hoặc Ctrl + b sau đó o |
| Thay đổi kích thước pane | Ctrl + b, sau đó giữ Ctrl + →↑↓← |
| Đóng pane | Ctrl + b, sau đó x |
| Tải lại tệp cấu hình | Ctrl + b, sau đó : rồi source-file ~/.tmux.conf |
Cấu Hình: Thiết Lập .tmux.conf
Tùy chỉnh tmux thực sự mở khóa hiệu suất. Tạo hoặc chỉnh sửa tệp ~/.tmux.conf và thêm các mục như:
bash
# Đổi prefix từ Ctrl-b thành Ctrl-a
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
# Kích hoạt hỗ trợ chuột (bấm/chọn pane, thay đổi kích thước, v.v.)
set -g mouse on
# Di chuyển pane theo phong cách Vim
bind -r h select-pane -L
bind -r j select-pane -D
bind -r k select-pane -U
bind -r l select-pane -R
# Thay đổi kích thước pane với phím mũi tên Alt
bind -n M-Left resize-pane -L 5
bind -n M-Right resize-pane -R 5
bind -n M-Up resize-pane -U 5
bind -n M-Down resize-pane -D 5
# Màu sắc terminal tốt hơn
set -g default-terminal "screen-256color"
# Tùy chỉnh thanh trạng thái
set -g status-bg black
set -g status-fg green
set -g status-interval 2
Sau đó tải lại với:
bash
tmux source-file ~/.tmux.conf
Mẹo Nâng Cao & Thực Hành Tốt Nhất
- Đặt tên cho các phiên — giúp bạn dễ dàng nhận diện khi có nhiều phiên.
- Chia pane một cách hợp lý — tránh chia quá nhiều; giữ mọi thứ trong tầm kiểm soát.
- Sử dụng chế độ sao chép:
Ctrl + bsau đó[để vào chế độ sao chép.- Điều hướng, nhấn
Spaceđể bắt đầu chọn,Enterđể sao chép. - Dán với
Ctrl + bsau đó].
- Giám sát bộ nhớ và tải khi sử dụng nhiều pane/cửa sổ, đặc biệt trên các máy hạn chế (như Raspberry Pi, v.v.).
- Tạo bí danh ngắn cho các lệnh tmux thường xuyên (ví dụ:
tma = tmux attach,tmls = tmux ls). - Đừng ngần ngại thay đổi ánh xạ phím nếu mặc định không phù hợp với quy trình làm việc của bạn (ví dụ: nếu bạn quen với chia tách của vim hoặc Emacs, v.v.).
Các Plugin Tăng Cường tmux
Các plugin giúp bạn thêm tính năng mà không cần phải làm lại từ đầu. Một trình quản lý phổ biến là TPM (tmux-plugin-manager). Đây là cách để bắt đầu:
bash
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
Trong tệp .tmux.conf, thêm:
bash
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
run '~/.tmux/plugins/tpm/tpm'
Sau khi bạn tải lại tmux:
bash
# Nhấn tổ hợp phím prefix của bạn (ví dụ: Ctrl‑a hoặc bất kỳ phím nào bạn đã đặt), sau đó I (I hoa)
# TPM sẽ cài đặt bất kỳ plugin nào được liệt kê
Một số plugin hữu ích:
- tmux-resurrect: lưu và khôi phục các phiên tmux
- tmux-continuum: tự động lưu / sao lưu định kỳ các phiên
- tmux-sensible: mặc định hợp lý cho nhiều cài đặt
Kết Luận
Nếu bạn nghiêm túc sử dụng tmux, bạn sẽ nhận thấy:
- Giảm thiểu việc chuyển đổi ngữ cảnh
- Làm việc từ xa an toàn hơn (các phiên vẫn hoạt động khi SSH bị ngắt)
- Quy trình làm việc được tổ chức tốt hơn với các cửa sổ và pane
- Khả năng tự động hóa các thiết lập không gian làm việc
Hãy dành cho mình thời gian để tinh chỉnh cấu hình tmux của bạn. Những gì cảm thấy khó khăn bây giờ sẽ trở thành phản xạ tự nhiên. Trước khi bạn biết điều đó, bạn sẽ điều hướng giữa các pane mà không cần nghĩ, ngắt kết nối các phiên khi di chuyển và quản lý dịch vụ, nhật ký, trình soạn thảo tất cả trong một nơi.
Chúc bạn tận hưởng việc sử dụng tmux! 🛠️
Nếu bạn thử nghiệm điều này, tôi rất muốn nghe mẹo tmux yêu thích của bạn hoặc ánh xạ phím tùy chỉnh. Hãy để lại bình luận bên dưới!