Bonjouret hop un petit déterrage en rêgle
Là où je m'interroge aussi: un dossier contenant un sous dossier vide est il considéré comme vide (de fichiers) ? ou "plein" puisque contenant un dossier ?
merci de vos lumières :zen:
Bonjour
Un dossier qui contient qu'un sous-dossier qui lui aussi contient un sous-dossier vide, si l'application de recherche des dossiers vides est bien faite, alors les 3 dossiers sont considérés comme vides.
C'est le genre de logiciel à n'utiliser que dans le dossier Users pour pas prendre de risques.
Sur un volume réseau (serveur en raid) c'est à tester.
@+
Bonjourok
une idée de logiciel ? ou en ligne de commande, pourquoi pas. Comme c'est un one shot, je n'ai pas besoin spécialement d'une appli
merci d'être passé
find . -type d -empty
find . -type d -empty -exec rmdir {} \;
BonjourBonjour
Sous Terminal, il est très simple de trouver les dossiers vides et de les supprimer. Pour les trouver, la commande est :Le « . » représente le dossier courant, et désigne ici le dossier de départ de la recherche (les dossiers vides trouvés font partie de ses sous-dossiers). Ce dossier de départ peut être remplacé par le chemin d'un autre dossier.Bloc de code:find . -type d -empty
Pour supprimer les dossiers vides, il suffit d'ajouter la commande adéquate à la suite :Il est à noter que cette commande retourne des messages d'erreur, car en continuant la recherche elle ne parvient pas à traiter les dossiers qu'elle vient de supprimer. C'est parfaitement normal, même si c'est un peu bête.Bloc de code:find . -type d -empty -exec rmdir {} \;
Toutefois, je ne peux m'empêcher de réitérer la mise en garde qui avait été faite au début de la discussion concernant de la dangerosité d'une telle opération. Supprimer un dossier qui est utile au système ou à une application peut mener à des dysfonctionnements.
En ce qui me concerne, j'ai trouvé plus d'un millier de dossiers vides sous mon dossier de session (petite maison), et j'ai pu déterminer qu'une grande partie d'entre eux serait utilisée à un moment ou à un autre. Je ne me risquerai donc pas à lancer la commande que j'ai donnée ci-dessus depuis l'emplacement par défaut de Terminal, qui est justement ce dossier de session.
Non testé avec Lion, à toi de voir si tu ose le faire.
Bonjour
Comment virer les dossiers vides inutiles.
J'ai tenté de le faire avec un AppleScript, pour comprendre et avoir une solution.
J'ai participé à un Forum pour voir si l'on pouvais résoudre ce problème, et ça marche (du moins chez moi avec Léopard 10.5.8).
C'est pas la solution que tu recherche, mais si ça te donne une idée on sait jamais.
ATTENTION: Faire des tests avant d'utiliser cette solution.
Non testé avec Lion, à toi de voir si tu ose le faire.
Le sujet qui donne le code (L'appli n'est pas de moi).
Post 38 télécharge SuppressionDossiersVides.zip (50 Ko) code non bridé.
http://forum.macfr.com/index.php?showtopic=27347
PS: Dit moi si ça fonctionne sur ton volume (lors des tests) pour savoir si il faut pas recompiler le code pour fonctionne en 64 au lieu de 32
Cordialement
@+
sudo find /Volumes/nom_du_volume_du_DDE -type d -empty -exec rmdir {} \;
sudo find
-type d -empty -exec rmdir {} \;
sudo find /Volumes/nom_du_volume_du_DDE -type d -empty
sudo find /Volumes/nom_du_volume_du_DDE/Users/username -type d -empty -exec rmdir {} \;
sudo find
-type d -empty -exec rmdir {} \;
sudo find /Volumes/nom_du_volume_du_DDE/Users/username -type d -empty
bonjour , non les disque dure c'est juste pour stocker mes dossier de google drive et dropbox et je sait que j'ai plein de sous vide , suite au trie que j'ai fait , c'est juste ces dossiers la que je veux supprimer .Salut pollomax.
Tu veux exécuter la commande de suppression des dossiers vides sur le volume d'un DDE contenant l'OS «Yosemite». Toute la question est : à quel niveau de l'arborescence de ce volume ? À partir de la racine (impliquant tout le Système de l'OS) ? Ou rien que sur le dossier de compte de tel utilisateur ? Si c'est depuis la racine (sur tout l'OS), les conseils de prudence donnés en 2011 par PA5CAL sont toujours d'actualité : tu risques de benner des dossiers ou sous-dossiers qui ont une fonction formelle dans le Système, même s'ils sont vides ; si c'est sur le dossier de compte d'un utilisateur, les enjeux se réduisent à peu (tu risques, par exemple, de supprimer le dossier .Trash vide du dossier de compte, lequel sera re-créé en cas de démarrage dans la session de l'OS du DDE).
Techniquement, la commande s'adapterait ainsi =>
- a) sur le volume entier du DDE (impactant tout le Système) :[Personnellement parlant, j'ai du mal à concevoir le besoin de se lancer dans cette entreprise de suppression à l'aveuglette de dossiers vides...]
(avec frappe à l'aveugle du mot-de-passe admin à la demande de password + pression sur la touche "Entrée" à nouveau). sudo est requis, si tu veux supprimer des dossiers vides dont le propriétaire est root. En pratique, tu peux taper d'abord :Bloc de code:sudo find /Volumes/nom_du_volume_du_DDE -type d -empty -exec rmdir {} \;
simplement et sauter un espace. Puis tu fais un glisser-déposer au pointeur de l'icône du volume monté de ton DDE dans le champ de la fenêtre du «Terminal», ce qui renseigne automatiquement le chemin au volume et son nom, avec saut d'espace automatique en sortie. Il ne te reste plus qu'à faire un copier-coller terminal de :Bloc de code:sudo find
et d'activer la commande. Mais je le redis : comme il est difficile de mesurer a priori l'impact de la suppression de tous les dossiers vides dans l'arborescence d'un OS, l'intention me paraît sujette à caution... Il serait prudent, dans un premier temps, de se borner à la partie informative de la commande :Bloc de code:-type d -empty -exec rmdir {} \;
qui afficherait en sortie la liste des dossiers vides trouvés - ce qui permettrait une inspection en survol de leur nature.Bloc de code:sudo find /Volumes/nom_du_volume_du_DDE -type d -empty
--------------------
- b) sur le dossier de compte d'un seul utilisateur :
(sudo requis si l'utilisateur n'a pas les mêmes identifiants que toi ; conseillé quand même si c'est le même que toi). En pratique, tu démarques la méthode ci-dessus :Bloc de code:sudo find /Volumes/nom_du_volume_du_DDE/Users/username -type d -empty -exec rmdir {} \;
+ saut d'un espace => tu vas graphiquement dans l'arborescence du volume de ton DDE au répertoire : /Users (Utilisateurs) que tu ouvres, tu sélectionnes le dossier de compte de l'utilisateur machin et tu en fais un glisser-déposer dans la fenêtre du «Terminal», avant de conclure par le copier-coller terminal de :Bloc de code:sudo find
Bloc de code:-type d -empty -exec rmdir {} \;
La commande purement informative serait du type :
Bloc de code:sudo find /Volumes/nom_du_volume_du_DDE/Users/username -type d -empty
--------------------