Trong thế giới của Linux, Terminal (hay cửa sổ dòng lệnh) là một công cụ cực kỳ mạnh mẽ, là trái tim và linh hồn của hệ điều hành. Tuy nhiên, việc sử dụng các lệnh Linux đôi khi có thể gây ra lỗi hoặc trở nên tẻ nhạt với các tác vụ lặp đi lặp lại. May mắn thay, có vô số mẹo và thủ thuật Linux Terminal hiệu quả giúp bạn khắc phục lỗi nhanh chóng và thực hiện các công việc nhàm chán một cách dễ dàng. Bài viết này, thichcongnghe.net sẽ cùng bạn khám phá những thủ thuật Linux thiết yếu, giúp bạn làm chủ Terminal và nâng cao đáng kể năng suất làm việc.
1. Chạy Lệnh Trước Đó Với sudo
(Quyền Siêu Người Dùng)
Tình huống này hẳn không còn xa lạ với bất kỳ ai dùng Linux: Bạn gõ một lệnh, nhấn Enter, và nhận thông báo “Permission denied” (Quyền bị từ chối). Bạn chợt nhận ra mình đã quên thêm tiền tố sudo
để chạy lệnh với quyền siêu người dùng. Thay vì phải gõ lại toàn bộ dòng lệnh dài dòng, bạn có thể áp dụng một mẹo Linux Terminal cực kỳ hữu ích:
sudo !!
Lệnh này chỉ dẫn Bash shell chạy lại lệnh cuối cùng bạn vừa thực thi, nhưng lần này với quyền sudo
. Ký hiệu !!
là một phần của tính năng mở rộng lịch sử lệnh của Bash (Bash history expansion). Nó sẽ được mở rộng thành toàn bộ lệnh trước đó. Vì vậy, nếu lệnh cuối cùng của bạn là apt update
, thì khi gõ !!
, nó sẽ thực thi apt update
. Và sudo !!
sẽ trở thành:
sudo apt update
Mẹo Linux terminal: Sử dụng sudo !! để chạy lại lệnh trước đó với quyền root.
Đây là một thủ thuật tiết kiệm thời gian đáng kể, đặc biệt khi bạn đang làm việc chuyên sâu và chỉ đơn giản là quên nâng cấp quyền.
2. Thực Thi Lệnh Mà Không Để Lại Dấu Vết Trong Lịch Sử
Bạn có bao giờ muốn chạy một lệnh mà không muốn nó bị lưu lại trong lịch sử Terminal của mình không? Có thể bạn đang sử dụng một mã thông báo bí mật, thử nghiệm một lệnh có rủi ro, hoặc đơn giản là muốn thử một cái gì đó mà bạn không chắc chắn. Trong Bash, có một cách cực kỳ đơn giản để giữ một lệnh khỏi lịch sử: chỉ cần bắt đầu nó bằng một khoảng trắng.
Dưới đây là một ví dụ về lịch sử lệnh của tôi trước khi áp dụng mẹo này:
ls
pwd
echo "Hello, world!"
Bây giờ, sau khi chạy một lệnh bắt đầu bằng khoảng trắng, nó sẽ không được thêm vào lịch sử.
Thủ thuật Linux: Chạy lệnh bằng cách thêm khoảng trắng phía trước để không lưu vào lịch sử terminal.
Như bạn có thể thấy, lệnh echo
cuối cùng đã không được tìm thấy trong lịch sử. Thủ thuật Linux này dựa vào một tính năng của Bash được gọi là HISTCONTROL
. Theo mặc định, nhiều hệ thống có HISTCONTROL
được đặt thành ignorespace
hoặc ignoreboth
. Các cài đặt này cho Bash biết rằng nó nên bỏ qua các lệnh bắt đầu bằng khoảng trắng khi ghi vào lịch sử.
3. Tái Sử Dụng Đối Số Từ Lệnh Trước Đó
Bạn đã từng gõ một tên tệp dài ngoằng, sau đó lại cần sử dụng nó trong lệnh tiếp theo? Thay vì sao chép và dán (hoặc gõ lại), bạn chỉ cần nhấn Alt
+ .
(dấu chấm) và nó sẽ tự động chèn đối số cuối cùng từ lệnh trước đó vào vị trí con trỏ của bạn. Thủ thuật Linux này hoạt động trong hầu hết các shell Bash và đặc biệt tiện dụng cho các lệnh làm việc lặp đi lặp lại trên cùng một tệp hoặc thư mục.
Ví dụ, bạn có thể chạy lệnh này:
mkdir ten_thu_muc_cuc_ky_dai_voi_cac_dau_gach_duoi
Sau đó, bạn có thể gõ cd
và nhấn Alt
+ .
để chuyển sang thư mục bạn vừa tạo.
Một tình huống phổ biến khác là khi bạn giải nén một tệp nén và muốn xóa nó ngay sau đó. Nếu bạn đã chạy lệnh:
tar -xvf ten_file_nen.tar.gz
Bạn chỉ cần gõ rm
và nhấn Alt
+ .
để xóa tệp nén đó. Bạn có thể nhấn phím tắt này nhiều lần để duyệt qua các đối số trước đó từ các lệnh đã chạy.
Biểu tượng Linux trên bàn làm việc cùng laptop, minh họa cho các chương trình terminal Linux.
4. Thay Thế Một Từ Trong Lệnh Trước Đó
Chúng ta ai cũng có lúc gõ nhanh và mắc lỗi. Có thể bạn đang sử dụng sai tên tệp, tên máy chủ hoặc gõ nhầm một cờ lệnh. Thay vì phải gõ lại toàn bộ lệnh, Bash cung cấp cho bạn một công cụ sửa lỗi nhanh chóng, đó là ký hiệu caret (^
):
^sai^đúng
Lệnh này sẽ thay thế lần xuất hiện đầu tiên của “sai” trong lệnh trước đó của bạn bằng “đúng” và chạy ngay lập tức lệnh đã cập nhật. Giả sử bạn định gõ ping google.com
nhưng lại gõ nhầm thành ping goggle.com
. Chỉ cần thực hiện:
^goggle^google
Bash sẽ chạy:
ping google.com
Mẹo dùng Bash: Thay thế từ trong lệnh Linux trước đó bằng cú pháp ^sai^đúng.
Thủ thuật Linux này rất hữu ích khi bạn có một lỗi đánh máy nhỏ cần sửa nhanh và nó chỉ xuất hiện một lần trong lệnh.
5. Hoán Đổi Ký Tự Trước và Sau Con Trỏ
Nếu bạn là một người gõ nhanh, có lẽ bạn đã từng bấm nhầm phím và gõ ra những từ như:
sl
Trong khi bạn thực sự muốn gõ:
ls
Vâng, đây là một lỗi đánh máy phổ biến đến mức thậm chí có một công cụ dòng lệnh hài hước tên là sl
hiển thị một đoàn tàu chạy ngang màn hình của bạn.
Nhưng thay vì nhấn Backspace, gõ lại, hoặc dùng các phím mũi tên, có một cách khắc phục nhanh hơn. Chỉ cần nhấn Ctrl
+ T
. Nó sẽ hoán đổi hai ký tự ngay xung quanh con trỏ của bạn. Giả sử bạn gõ:
grpe file.txt
Bạn muốn gõ grep
. Chỉ cần đặt con trỏ vào chữ p
, nhấn Ctrl
+ T
, và nó sẽ trở thành:
grep file.txt
Đây là một mẹo nhỏ nhưng bạn sẽ thấy mình sử dụng nó rất nhiều lần trong một ngày.
6. Sử Dụng Aliases (Bí Danh Lệnh)
Phải thừa nhận rằng, một số lệnh Linux rất dài. Và khi bạn thường xuyên chạy chúng, việc gõ đi gõ lại cùng một cờ lệnh (flag) hoặc đường dẫn đầy đủ trở nên khó chịu, chưa kể dễ gây ra lỗi. Đó là lúc các aliases
(bí danh) phát huy tác dụng. Chúng cho phép bạn tạo các phím tắt lệnh của riêng mình, sử dụng các tên đơn giản cho các lệnh phức tạp hoặc được sử dụng thường xuyên hơn.
Tạo một alias rất đơn giản:
alias ten_ngan='lệnh_thực_tế_ở_đây'
Giả sử bạn luôn chạy lệnh:
ls -lah --color=auto
Bạn có thể nhanh chóng tạo một alias như sau:
alias ll='ls -lah --color=auto'
Tạo alias cho lệnh Linux: Ví dụ sử dụng alias 'll' cho lệnh 'ls -lah –color=auto'.
Bây giờ bạn chỉ cần chạy ll
trên Terminal để thực thi toàn bộ lệnh. Lưu ý rằng alias này chỉ có hiệu lực cho phiên Terminal hiện tại. Nếu bạn muốn tạo một alias vĩnh viễn, bạn sẽ phải thêm nó vào tệp ~/.bashrc
và tải lại nó (ví dụ: source ~/.bashrc
).
7. Định Dạng Đầu Ra Thành Các Cột
Trên Linux, chúng ta thường cần làm việc với dữ liệu trên dòng lệnh. Đôi khi, đầu ra có thể khá lộn xộn, khó đọc. May mắn thay, chúng ta có lệnh column
. Nó có thể biến sự hỗn loạn đó thành các bảng dữ liệu sạch sẽ, dễ đọc. Lệnh column
định dạng văn bản thành các cột gọn gàng, căn chỉnh mọi thứ đẹp mắt dựa trên khoảng trắng hoặc một dấu phân cách tùy chỉnh. Nó hoàn hảo khi bạn xử lý dữ liệu như danh sách, CSV, dữ liệu phân tách bằng dấu hai chấm, v.v.
Hãy xem một ví dụ phổ biến. Chúng ta thường có thể liệt kê các tiến trình trên Linux bằng:
ps aux
Chúng ta có thể định dạng nó rõ ràng hơn bằng cách sử dụng lệnh column
:
ps aux | head -10 | column -t
Định dạng đầu ra lệnh Linux: Sử dụng lệnh column -t để sắp xếp dữ liệu ps aux thành các cột rõ ràng.
Lệnh này yêu cầu column
tạo một bảng với các cột được căn chỉnh. Khi sử dụng lệnh này, tốt nhất là bạn nên có đầu vào dễ dự đoán. Nếu dữ liệu của bạn không nhất quán một cách quá mức, đầu ra có thể vẫn trông hơi thô. Hơn nữa, nếu dấu phân cách của bạn xuất hiện trong các giá trị, nó có thể làm sai lệch định dạng.
8. Chạy Nhiều Lệnh Liên Tiếp Cùng Lúc
Đôi khi bạn muốn chạy nhiều lệnh nối tiếp nhau. Thay vì gõ từng lệnh một và chờ đợi, bạn có thể xâu chuỗi chúng trên một dòng duy nhất. Sau đó, bạn có thể kiểm soát liệu chúng có chạy vô điều kiện hay chỉ khi lệnh trước đó thành công.
Dấu chấm phẩy (;
) cho phép bạn xâu chuỗi các lệnh để chúng chạy tuần tự, bất kể thành công hay thất bại.
echo "Đang cập nhật..." ; sudo apt update ; echo "Hoàn tất!"
Chạy nhiều lệnh Linux cùng lúc: Minh họa các lệnh được phân tách bằng dấu chấm phẩy (;).
Trong ví dụ này, ngay cả khi apt update
thất bại, lệnh echo "Hoàn tất!"
cuối cùng vẫn chạy.
Toán tử &&
(hai dấu và) mặt khác, đảm bảo rằng mỗi lệnh chỉ chạy nếu lệnh trước đó thành công. Đây là một cách thông minh hơn để xâu chuỗi các lệnh.
sudo apt update && sudo apt upgrade
Lệnh sau &&
sẽ chỉ chạy nếu lệnh trước đó chạy thành công. Ngược lại với &&
là toán tử ||
(hai dấu gạch đứng). Khi hai lệnh được kết hợp bằng ký hiệu này, lệnh bên phải sẽ chỉ thực thi nếu lệnh bên trái thất bại. Sử dụng &&
và ||
giúp bạn gỡ lỗi các vấn đề với các Bash script
của mình một cách hiệu quả.
Tùy chỉnh công cụ dòng lệnh Linux: Hình ảnh tượng trưng cho khả năng cấu hình và tối ưu hóa Bash shell.
9. Sử Dụng Vân Tay Thay Vì Mật Khẩu
Việc gõ mật khẩu mỗi khi bạn chạy sudo
hoặc mở khóa màn hình là điều cần thiết để bảo mật, nhưng sau nhiều lần thực hiện, nó bắt đầu trở nên nhàm chán. Nếu máy tính xách tay của bạn có đầu đọc vân tay, bạn có thể sử dụng nó để xác thực thay vì gõ mật khẩu.
Các bước dưới đây tập trung vào Ubuntu và các bản phân phối dựa trên Ubuntu. Các bước có thể khác nhau đối với các bản phân phối khác.
Đầu tiên, cài đặt các gói cần thiết:
sudo apt install fprintd libpam-fprintd
Sau đó, chạy lệnh này để quét vân tay của bạn:
fprintd-enroll
Tiếp theo, mở tệp cấu hình PAM cho sudo
:
sudo nano /etc/pam.d/sudo
Thêm dòng này vào đầu tệp:
auth sufficient pam_fprintd.so
Cấu hình sudo Linux: Thêm dòng auth sufficient pam_fprintd.so để bật xác thực vân tay trên Ubuntu.
Chạy một lệnh với sudo
để kiểm tra chức năng vân tay. Hệ thống sẽ nhắc bạn quét vân tay thay vì yêu cầu mật khẩu.
10. Quay Lại Thư Mục Trước Đó
Tôi thường xuyên phải chuyển đổi qua lại giữa hai thư mục. Việc gõ đi gõ lại đường dẫn đầy đủ thực sự khó chịu. Vì vậy, thủ thuật Linux nhỏ gọn này đã trở thành cứu cánh cho tôi:
cd -
Lệnh này đưa bạn đến thư mục làm việc trước đó, giống như một nút “quay lại” trong hệ thống tệp Linux của bạn. Giả sử bạn bắt đầu ở:
/home/user/projects/website
Sau đó bạn chuyển đến ~/Downloads
. Bây giờ, nếu bạn chạy lệnh cd -
, bạn sẽ ngay lập tức quay lại “/home/user/projects/website”. Và nếu bạn chạy cd -
một lần nữa, bạn sẽ quay lại “~/Downloads”.
Thủ thuật cd – trong Linux: Quay lại thư mục làm việc trước đó một cách nhanh chóng.
Đây là một mẹo Linux Terminal đơn giản nhưng cực kỳ hiệu quả giúp tiết kiệm thời gian và tối ưu hóa luồng công việc của bạn.
Những mẹo và thủ thuật Linux Terminal này không chỉ giúp bạn giảm thiểu lỗi mà còn tăng tốc độ làm việc đáng kể trên dòng lệnh. Việc thành thạo các thủ thuật Bash này sẽ biến bạn từ một người dùng Linux bình thường thành một chuyên gia Terminal, giúp bạn điều hướng hệ thống, thực hiện các tác vụ phức tạp và tự động hóa quy trình một cách hiệu quả hơn.
Hãy bắt đầu áp dụng những thủ thuật này vào công việc hàng ngày của bạn và cảm nhận sự khác biệt. Bạn có mẹo Linux Terminal nào muốn chia sẻ không? Hay bạn đã áp dụng thành công mẹo nào từ bài viết này? Hãy để lại bình luận và chia sẻ kinh nghiệm của bạn với cộng đồng thichcongnghe.net nhé!