OVH Cloud OVH Cloud

Rechercher répertoires vides

4 réponses
Avatar
PascalJLM
Bonjour,
j'ai un r=E9pertoire avec des sous-r=E9pertoires ... je ne connais pas a
priori la profondeur max de l'arborescence.
Je voudrais supprimer tout les r=E9pertoires vides, mais aussi ceux qui
seront alors vides car ils ne contenaient que des sous-r=E9pertoires
eux-m=EAmes vides ...
Comment faire (en csh)?

Merci d'avance

Pascal

4 réponses

Avatar
lhabert
"PascalJLM" :

j'ai un répertoire avec des sous-répertoires ... je ne connais pas a
priori la profondeur max de l'arborescence.
Je voudrais supprimer tout les répertoires vides, mais aussi ceux qui
seront alors vides car ils ne contenaient que des sous-répertoires
eux-mêmes vides ...


(pas testé)

find . -depth -type d -print0 | xargs -0 rmdir

Le rmdir n'effacera que les répertoires vides, et on les lui fournit dans le
bon ordre grace à l'option « -depth ».

Avatar
PascalJLM


find . -depth -type d -print0 | xargs -0 rmdir

Le rmdir n'effacera que les répertoires vides, et on les lui fournit da ns le
bon ordre grace à l'option « -depth ».


Bon en fait j'ai trouvé ça:

foreach dd (`find . -mindepth 1 -depth -type d`)
if ( `ls -1 $dd | wc -l` == 0 ) rmdir -p $dd
end

rmdir -p efface le répertoire parent s'il devient vide

merci

Pascal

Avatar
Sébastien Monbrun aka TiChou
Dans le message <news:,
*PascalJLM* tapota sur f.c.o.l.configuration :


find . -depth -type d -print0 | xargs -0 rmdir


Bon en fait j'ai trouvé ça:

foreach dd (`find . -mindepth 1 -depth -type d`)
if ( `ls -1 $dd | wc -l` == 0 ) rmdir -p $dd
end


Vous n'auriez pas encore plus compliqué ?

--
Sébastien Monbrun aka TiChou


Avatar
lhabert
Sébastien Monbrun aka TiChou :

foreach dd (`find . -mindepth 1 -depth -type d`)
if ( `ls -1 $dd | wc -l` == 0 ) rmdir -p $dd
end


Vous n'auriez pas encore plus compliqué ?


Et qui soit encore plus vulnérable aux caractères à la con dans les noms de
fichiers?