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.
Contents
- Các Phương Pháp Xóa File Trong Linux
- Xóa File Bằng Trình Quản Lý File Trong Linux
- Xóa File Tạm Thời
- Xóa File Vĩnh Viễn
- Xóa File Bằng Terminal Trong Linux
- Cách Sử Dụng Lệnh rm Trong Linux
- Xóa Một File Duy Nhất
- Xóa Nhiều File
- Xóa File Với Lời Nhắc
- Buộc Xóa File
- Xóa File Sử Dụng Ký Tự Đại Diện (Wildcards)
- Xóa File Sử Dụng Lệnh unlink
- Xóa File Sử Dụng Lệnh shred
- Xóa File Sử Dụng Lệnh find
- Kết Luận
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
- 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.
- 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óa
- 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á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
, shred
và find
, để 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 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 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 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ệ 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:
- 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.
- 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’.
- 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ệ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.*
Xóa File Sử Dụng Lệnh unlink
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 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 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 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 rm
và shred
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.