GNU/Linux >> Tutoriels Linux >  >> Linux

Comment supprimer des dossiers avec un certain nom

Si le répertoire cible est vide, utilisez la recherche, filtrez uniquement les répertoires, filtrez par nom, exécutez rmdir :

find . -type d -name a -exec rmdir {} \;

Si vous souhaitez supprimer récursivement son contenu, remplacez -exec rmdir {} \; avec -delete ou -prune -exec rm -rf {} \; . D'autres réponses incluent des détails sur ces versions, créditez-les également.


Utilisez find pour le nom "a" et exécutez rm pour supprimer ceux nommés selon vos souhaits, comme suit :

find . -name a -exec rm -rf {} \;

Testez-le d'abord en utilisant ls pour lister :

find . -name a -exec ls {} \;

Pour vous assurer que cela ne supprime que les répertoires et non les fichiers simples, utilisez l'argument "-type d" (comme suggéré dans les commentaires) :

find . -name a -type d -exec rm -rf {} \;

Le "{}" est une substitution pour chaque fichier "a" trouvé - la commande exec est exécutée sur chacun par substitution.


Cela fonctionne également - cela supprimera tous les dossiers appelés "a" et leur contenu :

rm -rf `find . -type d -name a`

Linux
  1. Comment trouver des fichiers avec un certain sous-chemin ?

  2. Comment utiliser regex avec la commande find ?

  3. Comment supprimer le caractère \r avec sed

  4. Comment supprimer un fichier portant ce nom sous Linux :-]???????q

  5. Comment supprimer un fichier avec un nom bizarre ?

Comment trouver des applications installées avec une taille installée sous Linux

Comment supprimer des fichiers avec une extension spécifique sous Linux

Comment rechercher des fichiers avec la commande fd sous Linux

Comment trouver le nom du processus à partir de son PID

Comment trouver des dossiers sous Linux

Comment supprimer plusieurs dossiers en parallèle ?