Cách xóa đệ quy một loại tệp trong Linux trong một thư mục và tất cả các thư mục con của nó

Xóa một cách đệ quy một loại tệp

Chắc chắn trong một số trường hợp, bạn đã xác minh rằng bạn có một loại tệp vô dụng trong một số thư mục, chiếm ít dung lượng nhưng đơn giản là bạn không muốn nó trên máy tính của mình. Ví dụ: trong macOS, một số tệp được tạo .DS_Store lưu thông tin về biểu tượng của một thư mục, kích thước và vị trí của nó và trong Windows có desktop.ini tương đương. Chúng tôi phải làm gì nếu chúng tôi có một thư mục chứa đầy các thư mục con và chúng tôi muốn xóa các tệp này hoặc các loại tệp khác? Những gì chúng ta phải làm là xóa đệ quy Mỗi và tất cả một trong số họ.

Đây là điều chúng tôi có thể làm với tất cả các loại tệp. Ví dụ, nếu chúng ta có một ổ cứng chứa đầy nhạc, chúng ta có một trình phát đã tải các bản cover và chúng ta không muốn lưu chúng, chúng ta có thể sử dụng lệnh tương tự mà chúng tôi sẽ trình bày chi tiết bên dưới để xóa chúng. Tất nhiên, có tính đến việc chúng tôi sẽ xóa đệ quy các tệp thư mục và thư mục con của chúng bằng thiết bị đầu cuối và những tệp này sẽ bị mất vĩnh viễn, không có hại gì khi phải cẩn thận và / hoặc thực hiện kiểm tra trước khi xóa mọi thứ chúng tôi muốn xóa.

Xóa đệ quy các tệp cùng loại khỏi thiết bị đầu cuối

Các lệnh cho tệp macOS .DS_Store ví dụ sẽ như sau:

cd ruta/a/directorio
find . -name '*.DS_Store' -type f -delete

Trong số các lệnh trước, lệnh đầu tiên sẽ đặt chúng ta vào thư mục mà chúng ta muốn bắt đầu, tức là lệnh chứa tất cả các tệp .DS_Store mà chúng ta muốn xóa. Cái thứ hai là cái sẽ xóa tất cả các tệp .DS_Store khỏi thư mục đầu tiên và các thư mục con của nó hoặc các thư mục. Nếu những gì chúng tôi muốn là xóa ảnh khỏi các thư mục nhạc đã đề cập trước đó, chúng tôi phải đặt loại phần mở rộng giữa dấu ngoặc kép, chẳng hạn như '* .jpg'.

Thành thật mà nói, đây là điều tôi sẽ làm vào ngày tôi ngừng sử dụng Cantata làm trình phát nhạc mặc định. Cantata tạo và ẩn các tệp thông tin trùng tên với các bài hát có dấu chấm và dấu thấp phía trước (ví dụ: ._Song). Khi tôi cần, lệnh tôi sẽ phải sử dụng sẽ là tìm thấy. -name '._ *' -type f -delete.

Hướng dẫn nhỏ này có giúp bạn xóa đệ quy các tệp khỏi thiết bị đầu cuối không?

Lệnh Grep
Bài viết liên quan:
Lệnh Grep: công cụ mạnh mẽ để tìm văn bản từ Terminal

Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.

  1.   Sebastian Castro dijo

    Cảm ơn, nhưng có một lỗi trong mã của bạn. Bạn cần sử dụng biểu thức chính quy '*', nghĩa là '* .DS_STORE'. Tôi khuyên bạn nên sửa nó. Đối với những người có ít kiến ​​thức về bash, mã bạn đưa ra sẽ không phù hợp với họ. Lời chào hỏi!