Πώς να διαγράψετε αναδρομικά έναν τύπο αρχείου σε Linux σε έναν κατάλογο και όλους τους υποκαταλόγους του

Διαγράψτε αναδρομικά έναν τύπο αρχείου

Σίγουρα σε ορισμένες περιπτώσεις έχετε επαληθεύσει ότι έχετε έναν άχρηστο τύπο αρχείου σε πολλούς φακέλους, ο οποίος καταλαμβάνει λίγο χώρο, αλλά απλά δεν το θέλετε στον υπολογιστή σας. Για παράδειγμα, στο macOS δημιουργούνται ορισμένα αρχεία .DS_Store που αποθηκεύουν πληροφορίες σχετικά με το εικονίδιο ενός φακέλου, το μέγεθος και τη θέση του, και στα Windows υπάρχουν desktop.ini που είναι ισοδύναμα. Τι κάνουμε εάν έχουμε έναν κατάλογο γεμάτο υποκαταλόγους και θέλουμε να διαγράψουμε αυτά ή άλλους τύπους αρχείων; Αυτό που πρέπει να κάνουμε είναι διαγράψτε αναδρομικά Κάθε ένα από αυτά.

Αυτό είναι κάτι που μπορούμε να κάνουμε με όλους τους τύπους αρχείων. Για παράδειγμα, εάν έχουμε έναν σκληρό δίσκο γεμάτο μουσική, έχουμε ένα πρόγραμμα αναπαραγωγής που έχει κατεβάσει τα εξώφυλλα και δεν θέλουμε να τα αποθηκεύσουμε, μπορούμε να χρησιμοποιήσουμε την ίδια εντολή που θα αναλύσουμε παρακάτω για να τα διαγράψουμε. Φυσικά, λαμβάνοντας υπόψη ότι πρόκειται να διαγράψουμε αναδρομικά αρχεία καταλόγου και τους υποκαταλόγους τους με το τερματικό και ότι αυτά θα χαθούν για πάντα, δεν είναι κακό να είσαι προσεκτικός ή / και κάντε μια δοκιμή πριν διαγράψετε όλα όσα θέλουμε να διαγράψουμε.

Διαγράψτε αναδρομικά αρχεία ενός τύπου από το τερματικό

Οι εντολές για το παράδειγμα αρχείων macOS .DS_Store θα ήταν οι εξής:

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

Από τις προηγούμενες εντολές, η πρώτη θα μας τοποθετήσει στο φάκελο στον οποίο θέλουμε να ξεκινήσουμε, δηλαδή σε αυτόν που περιέχει όλα τα αρχεία .DS_Store που θέλουμε να διαγράψουμε. Το δεύτερο είναι αυτό που θα διαγράψει όλα τα αρχεία .DS_Store από το τον πρώτο φάκελο και τους υποφακέλους του ή καταλόγους. Εάν αυτό που θέλουμε είναι να διαγράψουμε τις φωτογραφίες από τους φακέλους μουσικής που αναφέρθηκαν προηγουμένως, πρέπει να τοποθετήσουμε τον τύπο επέκτασης μεταξύ των εισαγωγικών, όπως '* .jpg'.

Για να είμαι 100% ειλικρινής, αυτό θα κάνω την ημέρα που θα σταματήσω να χρησιμοποιώ το Cantata ως το προεπιλεγμένο πρόγραμμα αναπαραγωγής μουσικής. Η Cantata δημιουργεί και κρύβει αρχεία πληροφοριών με το ίδιο όνομα με τα τραγούδια που έχουν τελεία και χαμηλή γραμμή μπροστά τους (για παράδειγμα, ._Song). Όταν τη χρειάζομαι, η εντολή που θα πρέπει να χρησιμοποιήσω θα είναι εύρημα. -όνομα '._ *' - πληκτρολογήστε f-διαγραφή.

Σας βοήθησε αυτός ο μικρός οδηγός να διαγράψετε αναδρομικά αρχεία από το τερματικό;

Εντολή Grep
σχετικό άρθρο:
Εντολή Grep: ισχυρό εργαλείο για την εύρεση κειμένου από το Terminal

Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.

  1.   Σεμπαστιάν Κάστρο dijo

    Ευχαριστούμε, αλλά υπάρχει σφάλμα στον κωδικό σας. Πρέπει να χρησιμοποιήσετε την κανονική έκφραση '*', δηλαδή '* ​​.DS_STORE'. Σας προτείνω να το διορθώσετε. Λοιπόν, για όσους έχουν λιγότερη γνώση του bash, ο κωδικός που δώσατε δεν θα λειτουργήσει για αυτούς. Χαιρετίσματα!