Nội dung bài viết
#

Tìm hiểu lệnh rm trong Linux qua các ví dụ

Lenh rm trong Linux

rm được viết tắt từ remove, lệnh này dùng để xóa các đối tượng như tệp, liên kết, thư mục, … khỏi hệ thống như Linux hay Unix. Hiểu sâu hơn thì là nó giúp xóa đi các tham chiếu đến đối tượng khỏi các tệp, các tham chiếu đến cùng một đối tượng.

Mặc định lệnh rm sẽ không xóa các thư mục cho đến khi bạn cho phép bằng các tùy chọn mà nó hỗ trợ. Bạn cần thận trọng khi sử dụng lệnh này bởi nó chạy ngầm và có thể bị xóa dữ liệu khi bạn sơ xuất. Các tệp bị xóa bởi lệnh này sẽ không thể khôi phục lại.

Trong bài viết dưới đây, hãy cùng BKHOST theo dõi về cú pháp và các tùy chọn của lệnh rm.

Cú pháp lệnh

rm [OPTION]... FILE...

Ví dụ: có 5 tệp dưới đây với tên a.txt b.txt c.txt d.txt e.txt
$ ls
a.txt b.txt c.txt d.txt e.txt

Xóa từng tệp một:
$ rm a.txt

$ ls
b.txt c.txt d.txt e.txt

Xóa nhiều tệp cùng một lúc:
$ rm b.txt c.txt

$ ls
d.txt e.txt

Lưu ý: Lệnh rm sẽ không có thông báo kết quả, trừ khi nó bị lỗi.

Tùy chọn -i (Xóa tương tác)

Tùy chọn này tạo lệnh yêu cầu người dùng thực hiện bước xác nhận trước khi xóa dữ liệu. Bạn cần nhấn y để xác nhận, các ký tự khác sẽ không được chấp nhận và lệnh sẽ không được thực thi.

$ rm -i d.txt
rm: remove regular empty file 'd.txt'? y

$ ls
e.txt

Tùy chọn -f (Buộc xóa)

Lệnh rm sẽ xác nhận xóa nếu có write protected. Tùy chọn -f giúp ghi đè protected này và xóa tệp dứt khoát không cần xác nhận.

$ ls -l
total 0
-r--r--r--+ 1 User User 0 Jan 2 22:56 e.txt

$ rm e.txt
rm: remove write-protected regular empty file 'e.txt'? n

$ ls
e.txt

$ rm -f e.txt

$ ls

Lưu ý: Tùy chọn -f của lệnh rm sẽ không hỗ trợ đối với các thư mục write-protected.

Tùy chọn -r (Xóa đệ quy)

Tùy chọn -r hoặc -R giúp xóa các thư mục/tệp con của thư mục mẹ theo hình thức đệ quy. Theo từng giai đoạn, nó sẽ xóa các dữ liệu mà nó phát hiện. Theo mặc định lệnh rm sẽ không xóa thư mục, nhưng khi kết hợp tùy chọn này nó sẽ xóa.

$ ls
A

$ cd A

$ ls
B C

$ ls B
a.txt b.txt

$ ls C
c.txt d.txt

Sau đây là ví dụ về quá trình xóa thư mục A- Thư mục này tồn tại ở dạng thư mục mẹ sẽ được thực hiện theo trình tự như sau:
$ rm *
rm: cannot remove 'B': Is a directory
rm: cannot remove 'C': Is a directory

$ rm -r *

$ ls

Lúc này các thư mục và tệp bên trong thư mục A đều đã bị xóa.

Tùy chọn –version

Tùy chọn này giúp bạn kiểm tra được phiên bản lệnh rm mà bạn đang sử dụng trên hệ thống của mình.

$ rm --version
rm (GNU coreutils) 8.26
Packaged by Cygwin (8.26-2)
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later .
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Paul Rubin, David MacKenzie, Richard M. Stallman,
and Jim Meyering.

Lệnh rm xóa tệp có tên bắt đầu bằng ký hiệu gạch nối (-)

Để có thể xóa được các tệp bắt đầu bằng dấu ““ bạn có thể thêm dấu ““ vào trước tên tệp, việc thêm dấu ““ giúp cho lệnh rm phân biệt được đâu là tên tệp đâu là tùy chọn. Ví dụ bạn cần xóa tệp có tên -file.txt, hãy dùng câu lệnh như sau:

$ ls
-file.txt

$ rm -file.txt
rm: unknown option -- l
Try 'rm ./-file.txt' to remove the file '-file.txt'.
Try 'rm --help' for more information.

$ rm -- -file.txt

$ ls

Tổng kết về lệnh rm

Lệnh rm trong Linux dùng để xóa các tập tin và thư mục. Lệnh này có thể sử dụng với các tùy chọn để xóa các tập tin được chọn, xóa các thư mục rỗng hoặc xóa các tập tin một cách độc lập với việc xác nhận.

Nếu còn gặp bất cứ vướng mắc gì hoặc muốn tìm hiểu thêm các lệnh trong linux, hãy để lại ở bên bình luận bên dưới, BKHOST sẽ trả lời bạn trong thời gian sớm nhất.

Thuê Máy Chủ Vật Lý tại BKHOST

Giảm giá cực sâu, chất lượng hàng đầu. Đăng ký ngay hôm nay:

thuê server riêng

Tôi là Trịnh Duy Thanh, CEO & Founder Công ty Cổ Phần Giải Pháp Mạng Trực Tuyến Việt Nam - BKHOST. Với sứ mệnh mang tới các dịch vụ trên Internet tốt nhất cho các cá nhân và doanh nghiệp trong nước và quốc tế, tôi luôn nỗ lực hết mình nâng cấp đầu tư hệ thống phần cứng, nâng cao chất lượng dịch vụ chăm sóc khách hàng để đem đến những sản phẩm hoàn hảo nhất cho người tiêu dùng. Vì vậy, tôi tin tưởng sẽ đem đến các giải pháp CNTT mới nhất, tối ưu nhất, hiệu quả nhất và chi phí hợp lý nhất cho tất cả các doanh nghiệp.
Bình luận

Thanh toán linh hoạt

Chúng tôi chấp nhận thanh toán như ATM, Visa, Internet Banking, Paypal, Baokim, Ngân lượng

Gọi ĐT tư vấn ngay
Chat ngay qua Zalo
Chat ngay qua Messenger
Góp ý
Bạn đã hài lòng với trải nghiệm trên Bkhost.vn?
Cảm ơn lượt bình chọn của bạn, Chúc bạn 1 ngày tốt lành !