Cách Xóa File và Thư Mục Trong Linux: Hướng Dẫn Chi Tiết A-Z

Cách Xóa File và Thư Mục Trong Linux: Hướng Dẫn Chi Tiết A-Z

Quản lý file là một phần quan trọng trong việc sử dụng bất kỳ hệ điều hành nào, và Linux cũng không ngoại lệ. Đôi khi, bạn cần xóa file để giải phóng dung lượng hoặc loại bỏ các file không cần thiết. Mặc dù nghe có vẻ đơn giản, nhưng việc xóa file trong Linux có thể là một thử thách đối với người mới bắt đầu. Trong Linux, có nhiều phương pháp khác nhau để xóa file, bao gồm sử dụng dòng lệnh (CLI), giao diện người dùng đồ họa (GUI) và nhiều hơn nữa. Bài viết này sẽ hướng dẫn chi tiết 5 phương pháp khác nhau để xóa file và thư mục trong Linux.

Các Phương Pháp Xóa File Trong Linux

Chúng ta sẽ khám phá các phương pháp xóa file thông qua trình quản lý file và các lệnh Linux khác nhau. Hướng dẫn này sử dụng Ubuntu 20.04 LTS và trình quản lý file Nautilus, nhưng các phương pháp này sẽ hoạt động trên bất kỳ bản phân phối Linux nào.

Xóa File Bằng Trình Quản Lý File Trong Linux

Xóa File Tạm Thời

  1. Mở trình quản lý file bạn chọn và điều hướng đến vị trí của các file bạn muốn xóa.
  2. Chọn các file bạn muốn xóa và nhấn phím “Delete” trên bàn phím.

Các file được chọn để xóaCác file được chọn để xóa

  1. Ngoài ra, bạn có thể nhấp chuột phải vào một trong các file đã chọn và chọn tùy chọn “Move To Trash” (Di chuyển vào Thùng rác).

Menu Di chuyển vào thùng rácMenu Di chuyển vào thùng rác

Tất cả các file bị xóa bằng trình quản lý file sẽ được chuyển đến một vị trí mới gọi là “Trash” (Thùng rác), tương tự như Recycle Bin trong Windows.

Xóa File Vĩnh Viễn

Để xóa file vĩnh viễn trong Linux bằng trình quản lý file, hãy chọn các file bạn muốn xóa và nhấn tổ hợp phím “Shift + Delete“. Thường xuyên dọn dẹp “Trash” (Thùng rác) cũng là một thói quen tốt để khôi phục không gian lưu trữ cần thiết trên thiết bị Linux của bạn.

Xóa File Bằng Terminal Trong Linux

Phương pháp dòng lệnh để xóa file là phương pháp nhanh nhất. Dưới đây, chúng ta sẽ thảo luận về bốn lệnh dễ sử dụng, bao gồm rm, unlink, shredfind, để xóa file trong Linux.

Cách Sử Dụng Lệnh rm Trong Linux

Trước tiên, hãy xem lệnh rm. Đây là một lệnh linh hoạt có thể được sử dụng để xóa file cũng như thư mục và cung cấp rất nhiều tùy chọn để làm việc. Cú pháp cơ bản của lệnh rm là:

rm <tên_file>

Lệnh rm hỗ trợ các tùy chọn sau:

Tùy chọn Mô tả
-f -f là viết tắt của forced deletion (xóa bắt buộc). Với flag này, người dùng sẽ không nhận được lời nhắc xác nhận và tất cả các file và thư mục không tồn tại sẽ bị bỏ qua.
-i -i là viết tắt của interactive deletion (xóa tương tác). Khi flag này được sử dụng, lệnh sẽ yêu cầu xác nhận từ người dùng cho mỗi lần xóa file.
-r -r đề cập đến recursive deletion (xóa đệ quy). Khi flag này được sử dụng, lệnh sẽ xóa tất cả nội dung của thư mục được chỉ định.
-d Flag này được sử dụng để xóa các thư mục trống.
-v Flag này hiển thị giải thích về những gì đang được thực hiện hiện tại.

Sau khi thực thi lệnh, nếu không có đầu ra, điều đó có nghĩa là lệnh đã được thực thi thành công. Một thông báo lỗi chỉ được in khi lệnh được thực thi gặp sự cố.

Xóa Một File Duy Nhất

Để xóa một file duy nhất bất kể vị trí file trong Linux, hãy sử dụng lệnh sau:

rm <đường_dẫn_đến_file>

Xóa một file duy nhất bằng lệnh rmXóa một file duy nhất bằng lệnh rm

Lưu ý:

Nếu bạn đang ở cùng một thư mục, bạn có thể chỉ cần viết tên file thay vì viết đường dẫn đến file.

Xóa Nhiều File

Để xóa nhiều file tồn tại trong các thư mục khác nhau, bạn chỉ cần dán vị trí file sau lệnh, phân tách bằng khoảng trắng. Đây là cách bạn có thể sử dụng lệnh sau:

rm <đường_dẫn_đến_file_1> <đường_dẫn_đến_file_2>

Xóa nhiều file bằng lệnh rmXóa nhiều file bằng lệnh rm

Xóa File Với Lời Nhắc

Thông thường, lệnh rm chỉ đưa ra lời nhắc khi xóa một file được bảo vệ ghi. Để nhận được lời nhắc trước khi xóa mọi file, hãy sử dụng flag -i với lệnh rm như sau:

rm -i <tên_file>

Lời nhắc trước khi xóa các fileLời nhắc trước khi xóa các file

Buộc Xóa File

Nếu bạn không muốn thấy bất kỳ lời nhắc nào khi xóa một số file, hãy sử dụng -f để buộc xóa các file như sau:

rm -f <tên_file>

Lệnh để buộc xóa các file được bảo vệ ghiLệnh để buộc xóa các file được bảo vệ ghi

Ngay cả sau khi sử dụng flag -f, nếu bạn thấy lỗi có nội dung “Permission Denied” (Quyền bị từ chối), hãy sử dụng đặc quyền root với lệnh sudo như sau:

sudo rm -f <tên_file>

Xóa File Sử Dụng Ký Tự Đại Diện (Wildcards)

Trong Linux, chúng ta có thể sử dụng ký tự đại diện để khớp và xóa một file. Ký tự đại diện là các ký tự đặc biệt nhận ra một mẫu đặt tên cụ thể và hoạt động cho cả file và thư mục. Có ba loại ký tự đại diện:

  1. ký tự ?: Ký tự này sẽ chỉ khớp với bất kỳ ký tự đơn lẻ nào. Ví dụ: nếu chúng ta cung cấp đầu vào là te?t.txt, thì ký tự ? sẽ khớp với bất kỳ ký tự nào trong tên file bắt đầu bằng ‘te’, kết thúc bằng ‘t’ và có một ký tự ở giữa.
  2. ký tự *: Ký tự này sẽ khớp với bất kỳ ký tự nào bất kỳ số lần nào trong chuỗi đã cho. Ví dụ: nếu chúng ta cung cấp đầu vào là t**t.txt, thì ký tự ** sẽ khớp với bất kỳ ký tự nào bất kỳ số lần nào trong tên file bắt đầu bằng ‘te’ và kết thúc bằng ‘t’.
  3. ký tự []: Điều này chỉ khớp với các ký tự được chỉ định trong dấu ngoặc vuông. Ví dụ: nếu chúng ta cung cấp đầu vào là te[ab]t.txt, thì điều này sẽ chỉ khớp với teat.txt và tabt.txt với tên file có trong thư mục đã cho.

Chúng ta có thể sử dụng ký tự đại diện trong nhiều lệnh, bao gồm cả lệnh rm, như sau:

rm <ký_tự_đại_diện>

Bạn nên luôn chạy lệnh ls với ký tự đại diện để xem bạn có nhận được tên file chính xác hay không. Nếu không, các lệnh sai có thể xóa các file quan trọng của bạn. Sau khi bạn có thể xác minh rằng tên file là chính xác, bạn có thể thực thi lệnh rm với ký tự đại diện.

Kiểm tra và xóa file bằng ký tự đại diệnKiểm tra và xóa file bằng ký tự đại diện) trong lệnh “rm” để xóa hàng loạt các tệp tin có phần mở rộng hoặc tên tuân theo một mẫu nhất định.*

Lệnh unlink trong Linux không có nhiều tùy chọn và chỉ có thể xóa một file duy nhất tại một thời điểm. Cú pháp cơ bản của lệnh unlink như sau:

unlink <tên_file>

Cách sử dụng lệnh unlinkCách sử dụng lệnh unlink

Xóa File Sử Dụng Lệnh shred

Thông thường khi chúng ta xóa một file trong Linux bằng bất kỳ lệnh nào, chỉ con trỏ trỏ đến khối bộ nhớ bị hủy cấp phát, nhưng nội dung file vẫn tồn tại trong bộ nhớ. Điều này cho phép nhiều công cụ khôi phục khôi phục các file đã xóa. Nếu bạn muốn xóa vĩnh viễn các file khỏi bộ nhớ và không để lại dấu vết, bạn nên sử dụng lệnh shred. Nó làm xáo trộn nội dung file nhiều lần và sau đó xóa file, khiến cho hầu như không thể có bất kỳ công cụ khôi phục nào (ngay cả với phần cứng tiên tiến) để khôi phục file.

Để xóa một file vĩnh viễn trong Linux, hãy sử dụng lệnh sau:

shred -uz <tên_file>

Ở đây, -u được sử dụng để xóa file và -z là để ghi đè file bằng số không để ẩn việc cắt nhỏ, do đó, không để lại dấu vết nào của file.

Xóa file bằng lệnh shredXóa file bằng lệnh shred

Xóa File Sử Dụng Lệnh find

Lệnh find có thể được sử dụng để xóa file khi bạn không biết vị trí chính xác của chúng. Cú pháp để xóa file bằng lệnh find trong Linux là:

find . -name "<tên_file>" -exec rm {} ;

Trong cú pháp trên, lệnh find tìm kiếm tên file và sau đó chuyển kết quả tìm kiếm cho lệnh rm, lệnh này sẽ xóa các file. Dấu gạch chéo ngược được sử dụng để coi dấu chấm phẩy là kết thúc lệnh.

Xóa một file bằng lệnh findXóa một file bằng lệnh find

1. Làm cách nào để xóa nội dung khỏi một file trong Linux?

Để xóa nội dung file nhưng vẫn giữ nguyên file, hãy sử dụng lệnh sau. Ở đây, ký tự > được sử dụng để chuyển hướng nội dung được chỉ định vào tên file đã đề cập.

> <tên_file>

2. Làm cách nào để xóa các file trống trong Unix?

Để xóa các file trống trong một thư mục, hãy sử dụng lệnh sau:

find . -type f -empty -print -delete

Lệnh này sẽ tìm tất cả các file trống trong thư mục hiện tại và các thư mục con, sau đó xóa chúng.

3. Tại sao tôi không thể xóa một file trong Linux?

Khi xóa một file, nếu bạn thấy lỗi như “permission denied” (quyền bị từ chối), điều đó có nghĩa là bạn không có “write permission” (quyền ghi) để sửa đổi file. Bạn có thể cần sử dụng lệnh sudo để có quyền cao hơn hoặc thay đổi quyền của file bằng lệnh chmod.

4. Lệnh rm -r dùng để làm gì?

Lệnh rm -r dùng để xóa thư mục và tất cả các file và thư mục con bên trong nó. Đây là một lệnh mạnh mẽ và nên được sử dụng cẩn thận vì nó có thể xóa dữ liệu quan trọng một cách vĩnh viễn.

5. Làm thế nào để xóa một thư mục trống trong Linux?

Bạn có thể sử dụng lệnh rmdir <tên_thư_mục> để xóa một thư mục trống. Nếu thư mục không trống, lệnh này sẽ không hoạt động.

6. Sự khác biệt giữa rmshred là gì?

rm chỉ đơn giản là xóa liên kết đến file, trong khi shred ghi đè lên nội dung của file trước khi xóa nó. shred an toàn hơn vì nó làm cho việc khôi phục file trở nên khó khăn hơn nhiều.

7. Làm thế nào để tôi có thể xem trước các file sẽ bị xóa trước khi thực sự xóa chúng?

Bạn có thể sử dụng tùy chọn -n với lệnh rm để xem trước những file nào sẽ bị xóa mà không thực sự xóa chúng. Ví dụ: rm -r -n <thư_mục>.

Kết Luận

Bài viết này đã trình bày một số bước dễ dàng để xóa file trong Linux bằng cả GUI và Terminal. Hy vọng bài viết này hữu ích trong việc dạy cách sử dụng các lệnh như find để không chỉ tìm kiếm mà còn xóa file khi được sử dụng với lệnh rm. Hơn nữa, hãy nhớ kiểm tra kỹ các file trước khi xóa chúng, nếu không bạn có thể mất quyền truy cập vào dữ liệu cá nhân quan trọng.