Với việc sử dụng dòng lệnh để thao tác thì việc gõ lại những lệnh dài trong Linux quả là … cực hình. Để tiện lợi, ta có thể tìm lại những lệnh cũ để chạy luôn mà không phải gõ lại nguyên cả câu lệnh dài ngoằng.

 

Cách đơn giản nhất

– Dùng phím mũi tên lên/xuống (Up/Down)

– Ctrl + P và Ctrl + N (tương tự phím mũi tên lên/xuống)

Khi ra được câu lệnh muốn chạy chỉ cần Enter hoặc chỉnh sửa chút xíu rồi Enter là xong. Cách này dùng cho những lệnh mới gõ gần đây là tốt nhất.

 

Cách có thể tìm kiếm lệnh

– Dùng lệnh history với grep để tìm lệnh tương tự

 

– Hoặc liệt kê 5 lệnh gần nhất

 

Để chạy lại lệnh ta có thể copy paste rồi chỉnh sửa, hoặc có thể chạy luôn với cú pháp !<id> với id là số đứng phía trước lệnh khi tìm trong history.

 

Chạy lại lệnh vừa mới chạy xong ta dùng 2 dấu !

 

– Dùng Ctrl + R để tìm kiếm. Khi gõ vài ký tự OS sẽ đưa ra 1 câu lệnh có chứa những ký tự đó. Để xem những câu lệnh khác cũng chứa những ký tự đó, tiếp tục nhấn Ctrl + R.

Khi gặp câu lệnh muốn chạy, Enter. Muốn thoát, nhấn Ctrl + C hoặc phím mũi tên bất kỳ.

 

– Dùng set -o vi rồi nhấn Esc + K để đổi môi trường dòng lệnh thành trình biên tập vi để có thể dùng các lệnh của vi thao tác cho nhanh (K, J, /). Cách này thấy lung tung khó xài boring

 

Tại sao lại truy được các câu lệnh cũ?

Các câu lệnh cũ nằm trong file .bash_history ở thư mục gốc của mỗi user.

 

Số lượng câu lệnh cũ được ghi lại phụ thuộc vào giá trị HISTSIZE trong /etc/profile, thường là 1000

 

Trong các shell thì Bash shell hỗ trợ tất cả những cách trên. Còn Korn shell hay C shell hỗ trợ ít hơn.

Shell Up/Down Arrows Reverse Search Ctrl + P/Ctrl + N set -o Command History
Bash Yes Yes Yes Yes Yes
Korn No No No Yes Yes
C No No No No Yes