Thứ Sáu, 28 tháng 7, 2023

Cách dùng lệnh rm trong Linux

Trong bài này chúng ta sẽ tìm hiểu cách sử dụng lệnh rm trong Linux, đây là lệnh dùng để xóa cả file và thư mục trên hệ điều hành linux.

rm là một tiện ích dòng lệnh, được dùng để xóa các file và thư mục. Đây là một trong những lệnh cần thiết mà mọi người dùng Linux nên làm quen.

Trong hướng dẫn này mình sẽ giải thích cách sử dụng lệnh rm thông qua các ví dụ, bên cạnh đó cũng có các tùy chọn riêng của lệnh rm mà bạn cần phải biết.

Mục lục

  • 1. Cú pháp lệnh rm trong Linux
  • 2. Xóa nhiều file bằng lệnh rm trong Linux
  • 3. Xóa thư mục bằng lệnh rm trong Linux
  • 4. Thông báo xóa của lệnh rm trong Linux
  • 5. Lệnh rm -rf Linux

1. Cú pháp lệnh rm trong Linux

Cú pháp chung của lệnh rm như sau:

Bài viết này được đăng tại [tranvanbinh.vn]

1
rm [OPTIONS]... FILE...

Theo mặc định thì bạn có thể xóa file mà không cần truyền OPTION nào vào cả. Lúc này nó sẽ không xóa thư mục, cũng như không nhắc hỏi người dùng có tiếp tục xóa các file hay khônng.

Ví dụ dưới đây mình sử dụng lệnh rm để xóa file freetuts.txt.

1
rm freetuts.txt

Nếu bạn không có quyền ghi trên thư mục cha của file cần xóa thìsẽ gặp lỗi "Operation not permitted".

Nếu file không được bảo vệ thì nó sẽ xóa mà không cần thông báo. Khi xóa thành công nó sẽ không in ra thông báo gì mà chỉ return về 0.

Khi bạn xóa một file được bảo vệ thì nó sẽ hỏi nhắc bạn là có tiếp tục xóa không như sau:

1
rm: remove write-protected regular empty file 'filename'?

Bạn hãy nhập "y" và sau đó nhấn Enter để tiếp tục xóa.

Nếu bạn thấy thông báo này quá phiền thì sử dụng tùy chọn -f (--force) để tắt thông báo đó đi nhé.

1
rm -f filename

Nếu bạn muốn lấy tin về những file và thư mục bị xóa thì hãy sử dụng tùy chọn -v (verbose).

1
rm -v filename

Kết quả:

1
removed 'filename'

2. Xóa nhiều file bằng lệnh rm trong Linux

Không giống như lệnh unlink, lệnh rm cho phép bạn xóa nhiều file cũng lúc, cũng như có thể xóa cả thư mục và file, còn lệnh unlink thì chỉ xóa được file mà thôi.

Để xóa nhiều file cùng lúc thì hãy thêm danh sách các file và ngăn cách bởi khoảng trắng.

1
rm filename1 filename2 filename3

Bạn có thể sử dụng biểu thức chính quy để trả về danh sách file cần xóa, lúc này lệnh rm sẽ xóa theo danh sách đó.

Ví dụ dưới đây mình sẽ xóa tất cả file cảnh có phần đuôi là .png.

1
rm *.png

Lưu ý là khi xóa file bằng biểu thức chính quy thì bạn nên sử dụng lệnh ls để liệt kê xem các file có chuẩn hay chưa, chuẩn rồi thì mới chạy lệnh rm.

3. Xóa thư mục bằng lệnh rm trong Linux

Để xóa thư mục thì bạn phải thêm tùy chọn -d nhé.

1
rm -d dirname

rm -d có công dụng giống như lệnh rmdir trong Linux.

Để xóa các thư mục không có dữ liệu và tất cả các file bên trong bằng cách đệ quy thì hãy sử dụng tùy chọn -r (recursive):

1
rm -r dirname

Lúc này dù bạn có bao nhiêu cấp thư mục đi nữa thì thuật toán đệ quy cũng duyệt và xóa lần lượt từ con tới cha.

4. Thông báo xóa của lệnh rm trong Linux

Tùy chọn -i yêu cầu lệnh rm nhắc người dùng xác nhận trước khi xóa dữ liệu.

1
rm -i filename1 filename2

Lệnh này sẽ nhận được hai thông báo như sau:

1
2
rm: remove regular empty file 'filename1'?
rm: remove regular empty file 'filename2'?

Khi xóa nhiều hơn ba file hoặc xóa đệ quy thì nếu bạn muốn chỉ nhận được một lời nhắc duy nhất thì hãy sử dụng tùy chọn -I.

1
rm -i filename1 filename2 filename3 filename4

Hệ thống sẽ hỏi bạn như sau:

1
rm: remove 4 arguments?

5. Lệnh rm -rf Linux

Nếu thư mục hoặc file cần xóa được bảo vệ chống ghi thì lệnh rm sẽ nhắc bạn xác nhận thao tác xóa. Nếu bạn muốn xóa một thư mục mà không cần nhắc thì thêm tùy chọn -f.

1
rm -rf dirname

Lệnh trên sẽ xóa toàn bộ các file và thư mục theo thuật toán đệ quy. Vì vậy đây là một lệnh cực kì nguy hiểm, bạn phải cẩn thận khi sử dụng nó nhé. Có nhiều bạn đã inbox hỏi mình là lỡ chạy lệnh này rồi thì có lấy lại được dữ liệu không? Mình xin trả lời là vô phương cứu chữa :3

Như vậy là chúng ta đã học xong cách sử dụng lệnh rm trong Linux, đây là một lệnh rất hay có công dụng như lệnh unlink và rmdir. hẹn gặp lại các bạn ở những bài tiếp theo nhé.

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master