Câu hỏi này kiểm tra kiến thức về cách xử lý các tên tập tin bắt đầu bằng dấu "-" trong dòng lệnh Linux. Khi một tên tập tin bắt đầu bằng dấu "-", nó có thể bị hiểu nhầm là một tùy chọn của lệnh. Để tránh điều này, ta cần sử dụng một trong các phương pháp sau:
Phương án A: rm –f –abc
. Phương án này không đúng vì -f
là một tùy chọn của lệnh rm
(force, bỏ qua các cảnh báo). Nó sẽ không xóa tập tin có tên -abc
.
Phương án B: rm –i –abc
. Phương án này không đúng vì -i
là một tùy chọn của lệnh rm
(interactive, hỏi xác nhận trước khi xóa). Nó sẽ không xóa tập tin có tên -abc
.
Phương án C: rm -- -abc
. Phương án này đúng. Dấu --
được sử dụng để báo cho lệnh rm
biết rằng tất cả các đối số theo sau nó không phải là tùy chọn, mà là tên tập tin. Do đó, -abc
sẽ được hiểu là tên tập tin cần xóa.
Phương án D: rm \ -abc
. Phương án này đúng. Dấu \
là ký tự thoát (escape character), nó báo cho shell biết rằng ký tự theo sau nó (trong trường hợp này là dấu cách và dấu "-") nên được hiểu theo nghĩa đen, không phải là một phần của cú pháp lệnh. Nó cũng hoạt động, nhưng kém tường minh hơn so với phương án C.
Như vậy, cả C và D đều đúng, tuy nhiên phương án C được khuyến nghị hơn về mặt tường minh và rõ ràng ý định.