Cách sử dụng lệnh để xóa thư mục/tệp trong Linux

Cách sử dụng lệnh để xóa thư mục/tệp trong Linux

Chia sẻ kiến thức 04/05/2022

Bài viết dưới đây của FUNiX sẽ giới thiệu về Cách sử dụng các dòng lệnh (command line) để xóa thư mục/tệp trong (hệ điều hành) Linux. Mời các bạn cùng tìm hiểu.

>> Cách khởi động lại máy tính hoặc máy chủ Linux bằng một lệnh duy nhất

>> Cách quản lý các gói trên các bản phân phối Linux dựa trên RPM với DNF

Linux là hệ điều hành phổ biến dành cho lưu trữ VPS, nên để quản lý máy chủ thì một trong những điều quan trọng là người dùng Linux hoặc quản trị viên hệ thống cần biết cách sử dụng lệnh cơ bản của Linux, thông qua đó có thể thực hiện được các tác vụ bảo trì đơn giản như tạo tệp, điều hướng đến thư mục hoặc di chuyển tệp.

Hệ điều hành Linux
Hệ điều hành Linux

1. Cách xóa thư mục trong Linux

Đầu tiên chúng ta cần xác định đúng tên thư mục cần xóa. Sử dụng lệnh Is để phân biệt được tệp và thư mục, và dùng lệnh pwd để biết vị trí thư mục.

Để xóa thư mục trong Linux cần phải dùng lệnh rmdir hoặc rm. Sự khác biệt chính của 2 lệnh này là rmdir chỉ xóa được các thư mục trống, trong khi rm có thể xóa các tệp và thư mục không trống.

Sử dụng lệnh để xóa thư mục trong Linux
Sử dụng lệnh để xóa thư mục trong Linux.

Để xác định cách thức hoạt động của lệnh thì chúng ta cần sử dụng song song với các tùy chọn. Dưới đây là bảng thống kê các tổ hợp lệnh và tùy chọn trong Linux có thể sử dụng để xóa tệp:

Lệnh và tùy chọn

Mô tả

rmdir -p

Loại bỏ một thư mục con trống và thư mục mẹ của nó.

rmdir -v

In thông tin mà thư mục được chỉ định đã bị xóa.

rm -d

Xóa một thư mục trống bằng lệnh rm.

rm -r

Xóa một thư mục không trống và nội dung của nó.

rm -f

Bỏ qua mọi lời nhắc khi xóa tệp được bảo vệ chống ghi.

rm -rf

Bỏ qua bất kỳ lời nhắc nào khi xóa thư mục không trống được bảo vệ chống ghi.

rm -i

Đưa ra lời nhắc trước khi xóa mọi tệp.

rm -I

Chỉ xuất một lời nhắc một lần trước khi xóa nhiều hơn ba tệp.

rm *

Ký tự đại diện đại diện cho nhiều ký tự.

rm ?

Ký tự đại diện đại diện cho một ký tự.

Để quản lý VPS bằng cách sử dụng các lệnh này, trước hết cần sử dụng ứng dụng client SSH để kết nối trước với server và tiếp theo là thực hiện các lệnh từ đó.

>>> Đọc ngay: FUNiX – Học lấy bằng đại học trực tuyến giá trị ngang bằng đại học chính quy

1.1 Sử dụng lệnh rmdir để xóa thư mục trống

Khi sử dụng các dòng lệnh trong Linux, các tệp và thư mục sẽ bị xóa vĩnh viễn vì không có thùng rác hoặc thư mục rác để có thể truy xuất. Nên nếu muốn khôi phục một tệp hoặc thư mục bị xóa nhầm thì cách duy nhất là từ một bản sao lưu.

Lệnh rmdir chỉ hoạt động đối với thư mục trống nên nó được sử dụng để ngăn chặn các hành động nhầm lẫn không mong muốn như vậy xảy ra. Nếu thư mục có chứa tệp, nó sẽ trả về thông báo lỗi sau:

rmdir: failed to remove ‘Directory’: Directory not empty

Lệnh rmdir có cú pháp như sau:

rmdir [ option ] DirectoryName

Nếu không muốn sử dụng bất kỳ một tùy chọn nào đó, bạn có thể xóa nó khỏi cú pháp. Lưu ý là dòng lệnh sẽ phân biệt giữa chữ hoa và chữ thường. Do đó cần nhập chính xác tên thư mục để tránh nhầm lẫn. 

Ví dụ, đây là lệnh để xóa thư mục Simple-Directory:

rmdir Simple-Directory

Lệnh rmdir trong Linux cũng hoạt động được cùng một lần đối với nhiều thư mục trống. Trong dòng lệnh chúng ta add thêm các thư mục làm đối số bổ sung để có thể xóa được một lần nhiều thư mục.

rmdir Directory_1 Directory_2 Directory_3

Chúng ta hãy xem xét đến các tùy chọn có thể sử dụng với lệnh rmdir.

Đầu tiên là -p, đây là tùy chọn hoạt động để xóa một thư mục con và thư mục mẹ của nó. 

Ví dụ: nếu đường dẫn thư mục của bạn là /Directory/SubDirectory, hãy sử dụng lệnh sau:

rmdir -p / Directory / SubDirectory

Lệnh này sẽ xóa thư mục SubDirectory trong đường dẫn Directory trước. Nếu sau khi SubDirectory đã được gỡ bỏ, Directory rỗng thì nó cũng sẽ bị xóa.

Tùy chọn tiếp theo là verbose, trong dòng lệnh được quy định là -v. Tùy chọn này sẽ in ra một văn bản như một xác nhận rằng thư mục được chỉ định đã bị xóa. 

Ví dụ: 

rmdir -v Simple-Directory

Thông báo đầu ra sẽ như thế này:

rmdir: removing directory, ‘Simple-Directory’

>>> Đọc ngay: Cách cài đặt Microsoft Office trên Linux

1.2 Sử dụng lệnh rm để xóa thư mục không trống

Lệnh rm ban đầu được dùng để loại bỏ các file, nhưng bây giờ chúng ta có thể sử dụng các tùy chọn như -r, -rf, và -d để loại bỏ các thư mục. Cú pháp cơ bản cho lệnh rm của Linux như sau:

rm [ option ] FileOrFolderName

Sử dụng một tùy chọn recursive, được quy định bằng -r, để xóa thư mục và nội dung của thư mục đó. 

Ví dụ: Để xóa Simple-Directory và nội dung của nó ta sẽ sử dụng lệnh sau:

rm -r Simple-Directory

Đặc biệt lưu ý: Nếu bạn dùng lệnh rm -r để xóa một thư mục không trống, tất cả các tệp bên trong thư mục sẽ bị xóa vĩnh viễn và bạn chỉ có thể khôi phục chúng từ một bản sao lưu. Vì vậy hãy thật thận trọng khi sử dụng lệnh này.

Nếu thư mục ở trạng thái write-protected, bạn sẽ nhận được lời nhắc nhở xác nhận trước khi tiếp tục xóa thư mục. Muốn xóa một thư mục mà không cần hỏi lại, hãy sử dụng tùy chọn -rf:

rm -rf Simple-Directory

Lệnh rm cũng dùng để xóa các thư mục trống trong Linux. Tuy nhiên, khác với lệnh rmdir, bạn phải sử dụng tùy chọn -d:

rm -d Simple-Directory

Cũng giống như lệnh rmdir, bạn có thể sử dụng lệnh rm để xóa nhiều thư mục cùng lúc. Việc cần làm là add thêm tên của thư mục để làm đối số mới trong dòng lệnh:

rm -r Directory_1 Directory_2 Directory_3

>>> Đọc ngay: Cách bắt đầu sử dụng Linux

2. Cách sử dụng lệnh rm để xóa tệp

Sử dụng lệnh rm để xóa tệp
Sử dụng lệnh rm để xóa tệp.

Chúng ta có thể sử dụng lệnh rm để xóa các tệp trong Linux theo cách thủ công thay vì xóa một thư mục không trống. Phương pháp này sẽ an toàn hơn vì sẽ hạn chế việc chúng ta xóa nhầm các tệp quan trọng.

Để xóa một tệp trong thư mục làm việc hiện tại, hãy sử dụng tên tệp theo sau lệnh rm:

rm file.txt

Để xóa nhiều tệp trong thư mục, hãy viết tất cả các tên tệp bạn muốn xóa vào lệnh:

rm file1.txt file2.txt file3.txt

Nếu bạn đang ở trong cùng một thư mục với các tệp được chỉ định thì tất cả các lệnh trên đều có thể hoạt động. Tuy nhiên, bạn vẫn có thể xóa tệp không có trong thư mục làm việc hiện tại bằng cách đặt đường dẫn tệp vào đối số dòng lệnh. 

rm dir/subdir/file.txt

Bạn có thể thêm tùy chọn -i trong lệnh để nhận được lời nhắc xác nhận mọi thao tác trong quá trình xóa tệp. Cách này sẽ giúp ngăn ngừa việc xóa nhầm và các tệp sẽ bị xóa vĩnh viễn.

rm -i file1.txt file2.txt file3.txt

Khi hiện ra lời nhắc nhở, nếu bạn muốn tiếp tục xóa các tập tin thì gõ Y và nhấn Enter, nếu không thì gõ N và nhấn Enter.

Sử dụng -I để nhận được lời nhắc khi bạn muốn xóa nhiều hơn ba tệp. Mặc dù tùy chọn này kém an toàn hơn tùy chọn -i, nhưng nó vẫn cung cấp khả năng bảo vệ bổ sung để tránh xóa nhầm các tệp quan trọng.

rm -I file1.txt file2.txt file3.txt

Nếu tệp được cài đặt ở trạng thái write-protected, hệ thống vẫn sẽ nhắc bạn trước khi xóa. Và nếu bạn không muốn nhận được lời nhắc khi xóa các tệp như vậy, hãy sử dụng tùy chọn -f.

rm -f file.txt

Các lệnh rm của Linux mà chúng ta vừa thảo luận ở trên sẽ hỗ trợ xóa các tệp cụ thể. Tuy nhiên, bạn vẫn có thể xóa nhiều tệp bằng một lệnh duy nhất, bằng cách sử dụng các ký tự đại diện. Có hai loại ký tự đại diện đó là dấu hoa thị (*) và dấu hỏi (?).

Dấu hoa thị đại diện cho nhiều ký tự không xác định, và một trong những ví dụ sử dụng nó phổ biến nhất là xóa tệp có phần mở rộng nhất định. Lệnh dưới đây sẽ xóa tất cả các tệp .txt trong thư mục làm việc hiện tại:

rm *.txt

Hoặc cũng có thể sử dụng dấu hoa thị để xóa tất cả các tệp bắt đầu bằng một chữ cái cụ thể:

rm a*

Dấu hoa thị lúc này là đại diện cho tất cả các ký tự không xác định đứng sau ký tự a . Lệnh sẽ xóa tất cả các tệp bắt đầu bằng “a”, bất kể phần mở rộng của nó, chẳng hạn như amazon.txt, alligator.png và aaron.zip.

Dấu chấm hỏi thì đại diện cho một ký tự duy nhất. Bạn có thể sử dụng nó để xóa các tệp có phần mở rộng ký tự đơn, chẳng hạn như .S, .O và .C .

rm *.?

Đặc biệt lưu ý: Hãy cẩn thận khi sử dụng các ký tự đại diện, vì bạn có thể xóa đi các tệp quan trọng. Đầu tiên, hãy sử dụng lệnh Is để kiểm tra tất cả các tệp trong thư mục. Đảm bảo rằng không có dữ liệu quan trọng hoặc tệp hệ thống trước khi sử dụng lệnh ký tự đại diện.

>>> Đọc ngay: 6 yếu tố cần xem xét khi lựa chọn một bản phân phối Linux

3. Kết luận

Để xóa thư mục và tệp thông qua dòng lệnh trong Linux đòi hỏi bạn phải hiểu cách sử dụng đúng các lệnh rm và rmdir. Nói một cách đơn giản nhất, lệnh rm xóa các tệp và thư mục không trống, còn rmdir chỉ xóa cho các thư mục trống.

Hãy nhớ rằng không có thùng rác hoặc thư mục rác trong Linux. Vậy nên khi thực hiện xóa các tệp và thư mục bằng dòng lệnh, chúng sẽ bị xóa vĩnh viễn. Do đó nên hãy thật thận trọng khi sử dụng các lệnh này, hoặc bạn nên tạo bản sao lưu trước khi xóa các tệp và thư mục trên VPS.

FUNiX vừa giới thiệu qua về Cách sử dụng các dòng lệnh để xóa thư mục/tệp trong Linux. Các bạn có thể tìm đọc thêm các bài viết bổ ích khác tại Funix.edu.vn.

Nguồn tham khảo: Hostinger Tutorials

https://www.hostinger.com/tutorials/how-to-remove-files-and-folders-using-linux-command-line/

>>> Nếu bạn đang có nhu cầu tìm hiểu về khóa học lập trình đi làm ngay. Hãy liên hệ với FUNiX ngay tại đây:

>>> Xem thêm chuỗi bài viết liên quan:

Cách tạo ảnh Mosaic trên Linux với Polyfoto

Cách ghi chú trong Terminal Linux với ứng dụng ghi chú tnote

Cách sử dụng lệnh wc trong Linux

Hướng dẫn cách sử dụng lsof để theo dõi file đang mở trên Linux

Phạm Thị Thanh Ngọc (theo Hostinger)

ĐĂNG KÝ TƯ VẤN HỌC LẬP TRÌNH TẠI FUNiX

Bình luận (
0
)

Bài liên quan

  • Tầng 0, tòa nhà FPT, 17 Duy Tân, Q. Cầu Giấy, Hà Nội
  • info@funix.edu.vn
  • 0782313602 (Zalo, Viber)        
Chat Button
Chat với FUNiX GPT ×

yêu cầu gọi lại

error: Content is protected !!