JavaScript is required

Để chỉ liệt kê danh sách các tập tin có ký tự cuối cùng trong tên là “?” ở thư mục hiện hành, ta dùng lệnh?

A.

ls *?

B.
ls*\?
C.
ls *[?]
D.
Tất cả đều đúng
Trả lời:

Đáp án đúng: D


Câu hỏi yêu cầu liệt kê các tập tin có ký tự cuối cùng là "?" trong tên. Trong Linux, ký tự "?" là một wildcard, đại diện cho một ký tự bất kỳ. Để tìm chính xác ký tự "?", ta cần "thoát" (escape) nó bằng dấu "\" để shell hiểu rằng ta muốn tìm ký tự literal "?". * **Phương án A:** `ls *?` sẽ liệt kê các tập tin có ít nhất một ký tự trước ký tự cuối cùng (bất kỳ). Do đó không chính xác. * **Phương án B:** `ls *\?` sẽ liệt kê các tập tin có ký tự cuối cùng là "?". Đây là phương án đúng. * **Phương án C:** `ls *[?]` sẽ liệt kê các tập tin có ký tự cuối cùng là "?". Cách này cũng đúng, vì dấu ngoặc vuông `[]` tạo thành một character class, và trong trường hợp này, nó chỉ chứa ký tự "?". * **Phương án D:** Vì cả B và C đều đúng, nên phương án D đúng. Vậy, đáp án đúng là D.

Câu hỏi liên quan