Pour le boulot j'ai du mettre en place un espace de partage avec samba.
Jusque la rien de compliqué.
Mais je dois supprimer automatiquement les fichiers de plus de 7jours.
je fais ca grâce à un find :
find /partage/echange/ -type f -mtime +7 -exec rm -vf {} \;
ensuite il me reste les repertoires vide à supprimer ...
et la j'ai essayé un :
find /partage/echange/ -type d -exec rmdir 2>/dev/null {} \;
mais le truc c'est que find /partage/echange/ -type d donne la liste des répertoires dans le mauvais sens (du moins profond au plus profond) du coup il n'efface que le répertoire le plus profond et pas les répertoires parents.
Je mettrais bien un rmdir -p mais je ne veux pas effacer /partage/echange/ si il est vide.
si quelqu'un a une idée ca m'aiderai bien, merci d'avance.
# man find
Posté par mac . Évalué à 2.
[^] # Commentaire supprimé
Posté par Anonyme . Évalué à 7.
Ce commentaire a été supprimé par l’équipe de modération.
# Une solution
Posté par Anonyme . Évalué à 4.
find . -type d -empty -print -delete
[^] # Re: Une solution
Posté par Anonyme . Évalué à 1.
find . -depth -type d -empty -exec rmdir --verbose {} \;
# Inverser la sortie de find
Posté par Florian Hatat . Évalué à 0.
tac
qui renverse son entrée : la première ligne devient la dernière, la dernière devient la première.Tu écrirais un truc du genre :
find ..... | tac | xargs rmdir
# tout simplement
Posté par mansuetus (site web personnel) . Évalué à 3.
rmdir plante si le répertoire n'est pas entier, donc ça marche.
"vous avez demandé un bourrin, ne quittez pas"
[^] # Re: tout simplement
Posté par zerkman (site web personnel) . Évalué à 2.
[^] # Re: tout simplement
Posté par yellowiscool . Évalué à 2.
Envoyé depuis mon lapin.
[^] # Re: tout simplement
Posté par Frédéric Perrin (site web personnel) . Évalué à 1.
Mais comme l'a dit quelqu'un d'autre, c'est spécifique zsh. Avec une variation sur le find :
find /partage/echange -type d -print0 | xargs -0 rmdir -p \{\} \;
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.