<Trước | Nội dung | Tiếp theo>
Hoàn thành
Một cách khác mà shell có thể giúp bạn là thông qua một cơ chế được gọi là hoàn thành. Sự cố xảy ra khi bạn nhấn phím tab trong khi nhập lệnh. Hãy xem cách này
Hoàn thành
làm. Đưa ra một thư mục chính trông giống như sau:
[tôi @ linuxbox ~] $ ls | ||
Máy tính để bàn ls-output.txt | Hình ảnh Mẫu | Videos |
Tài liệu Âm nhạc | Public |
Hãy thử nhập nội dung sau nhưng không nhấn đăng ký hạng mục thi Chìa khóa:
[tôi @ linuxbox ~] $ là tôi
[tôi @ linuxbox ~] $ là tôi
Bây giờ hãy nhấn phím tab:
[tôi @ linuxbox ~] $ ls ls-output.txt
[tôi @ linuxbox ~] $ ls ls-output.txt
Hãy xem shell đã hoàn thành dòng cho bạn như thế nào? Hãy thử một cái khác. Một lần nữa, đừng nhấn
Nhập:
[tôi @ linuxbox ~] $ ls D
[tôi @ linuxbox ~] $ ls D
Nhấn tab:
[tôi @ linuxbox ~] $ ls D
[tôi @ linuxbox ~] $ ls D
Không có hoàn thành, chỉ là một tiếng bíp. Điều này xảy ra vì “D” khớp với nhiều mục nhập trong thư mục. Để hoàn thành thành công, "manh mối" bạn cung cấp cho nó phải rõ ràng. Nếu chúng ta đi xa hơn:
[tôi @ linuxbox ~] $ tôi làm
[tôi @ linuxbox ~] $ tôi làm
Sau đó nhấn tab:
[tôi @ linuxbox ~] $ ls Tài liệu
[tôi @ linuxbox ~] $ ls Tài liệu
Việc hoàn thành thành công.
Mặc dù ví dụ này cho thấy hoàn thành các tên đường dẫn, cách sử dụng phổ biến nhất của nó, nhưng hoàn thành cũng sẽ hoạt động trên các biến (nếu phần đầu của từ là “$”), tên người dùng (nếu từ bắt đầu bằng “~”), lệnh ( nếu từ đó là từ đầu tiên trên dòng) và tên máy chủ (nếu đầu từ là “@”). Hoàn thành tên máy chủ chỉ hoạt động cho các tên máy chủ được liệt kê trong / Etc / hosts.
Có một số chuỗi khóa điều khiển và khóa meta được liên kết với sự hoàn chỉnh:
Bảng 8-4: Lệnh hoàn thành
Hành động chính
Hành động chính
Alt-? Hiển thị danh sách các công việc có thể hoàn thành. Trên hầu hết các hệ thống, bạn cũng có thể thực hiện việc này bằng cách nhấn phím tab lần thứ hai, điều này dễ dàng hơn nhiều.
Alt- * Chèn tất cả các hoàn thành có thể. Điều này hữu ích khi bạn muốn sử dụng nhiều hơn một kết quả phù hợp có thể.
Có một số điều nữa mà tôi thấy khá mù mờ. Bạn có thể thấy một danh sách trong bash trang người đàn ông trong “READLINE”.
Hoàn thành có thể lập trình
Các phiên bản gần đây của bash có một cơ sở được gọi là hoàn thành có thể lập trình. Hoàn thành đúng ngữ pháp cho phép bạn (hoặc nhiều khả năng hơn, nhà cung cấp phân phối của bạn) thêm các quy tắc hoàn thành bổ sung. Thông thường điều này được thực hiện để thêm hỗ trợ cho các ứng dụng cụ thể. Ví dụ: có thể thêm phần hoàn chỉnh cho danh sách tùy chọn của một lệnh hoặc so khớp các loại tệp cụ thể mà ứng dụng hỗ trợ. Ubuntu có một tập hợp khá lớn được xác định theo mặc định. Việc hoàn thành có thể lập trình được thực hiện bởi các hàm shell, một loại tập lệnh shell mini mà chúng ta sẽ trình bày trong các chương sau. Nếu bạn tò mò, hãy thử:
thiết lập | ít hơn
và xem bạn có thể tìm thấy chúng không. Không phải tất cả các bản phân phối đều bao gồm chúng theo mặc định.
<Trước | Nội dung | Tiếp theo>