Suppression de sous sous répertoire

Résolu/Fermé
davidlinux Messages postés 80 Date d'inscription mercredi 23 septembre 2009 Statut Membre Dernière intervention 24 juillet 2010 - 23 sept. 2009 à 17:15
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 - 24 sept. 2009 à 08:21
Bonjour,
je souhaiterais connaitre la commande shell linux (Centos 5.3) qui me permettrait de supprimer des sous répertoires dans une arborescence complexe :

il faudrait que je puisse supprimer les répertoires et sous répertoires vide et non vide depuis le répertoire _share (voir exemple ci dessous) : j'ai testé la commande rm -dr x86_64 mais ça ne fonctione pas...

exemple :

_share
|____rep1
| |___x86_64
|____rep2
| |___x86_64
:

Pour ceux qui on devinez c'est pour un repository linux pour lequel je n'ai pas besoin des fichiers pour processeur 64 bits... et j'ai plusieurs serveurs à faire .... et j'ai pensé à modifié le script rsynch pour ne plus les récuperer

cordialement
A voir également:

3 réponses

ibtor Messages postés 2360 Date d'inscription samedi 29 mars 2008 Statut Membre Dernière intervention 22 décembre 2009 283
23 sept. 2009 à 18:25
j'aurais balancer ça :
find ./_share -name "x86_64" -type d -exec rm -r {} \; 
1
davidlinux Messages postés 80 Date d'inscription mercredi 23 septembre 2009 Statut Membre Dernière intervention 24 juillet 2010 4
24 sept. 2009 à 07:27
bonjour
merci pour le tuyau :
j'ai rajouté l'option fd à la fin de cette commande pour que ça fonctionne
find ./_share -name "x86_64" -type d -exec rm -rdf {} \;
par contre je ne comprend pas à quoi sert le \; à la fin de la commande ?
cordialement
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
24 sept. 2009 à 08:21
hello
le ; est un séparateur de commande pour le shell. le \; indique au shell que c'est la fin des paramètres pour les options de la commande utilisée avec -exec de find (ici la commande rm) et non pas un séparateur entre la commande find et une autre commande
0