Réponses:
Tout d'abord, notez que la suppression de répertoires vides n'est généralement pas nécessaire. Certains services ou applications peuvent même avoir besoin de certains répertoires pour exister. Soyez conscient de ce que vous faites.
Vous pouvez répertorier les dossiers vides avec find
, lorsqu'ils sont exécutés à partir de Terminal.app:
find . -type d -empty
Par défaut, find
répertorie les fichiers et les dossiers, mais ici, les -type d
restreint aux répertoires et l' -empty
option affiche uniquement les répertoires vides. Cela récursive tous les dossiers descendant de votre répertoire personnel ( ou abrégé ). Pour étendre cela à l'ensemble de votre système de fichiers, utilisez:/Users/your-username/
~
find / -type d -empty
Ici, /
signifie la racine de votre système de fichiers Mac OS X. Vous pouvez bien sûr également utiliser tout autre point de départ, par exemple votre disque externe monté sous ;/Volumes/your-disk-name
find /Volumes/your-disk-name -type d -empty
Maintenant, si vous souhaitez supprimer les find
sorties, ajoutez simplement -delete
, comme ceci:
find . -type d -empty -delete
Remarque: cela ne demandera pas de confirmation . Il supprimera tous les répertoires qu'il peut, c'est-à-dire ceux où vous avez la permission de supprimer. Ils ne seront pas mis à la poubelle mais disparus pour toujours. Si vous souhaitez être invité avant la suppression, remplacez la commande par quelque chose comme ceci:
find . -type d -empty -exec rm -ri '{}' \;
illegal option -- t
type
et empty
semble ne pas pouvoir reconnaître.
find
requiert un chemin, donc essayez à nouveau avec find . -type d
, non find -type d
(ce dernier fonctionne pour GNU find
).
find
de la même manière que ci-dessus), puis utilisez la commande suggérée pour supprimer les répertoires vides restants.
J'ai créé un petit programme gratuit qui résout mieux cela:
http://www.macupdate.com/app/mac/52551/find-empty-folders
L'avantage de ce programme est qu'il trouve également des dossiers qui sont apparemment vides mais contiennent le fichier invisible ".DS_Store".
Et il vous permet également de déplacer immédiatement les éléments trouvés dans la corbeille.
find ~/Documents -type f -name 'Icon?' -print -delete;
Pour poursuivre cet effort:
J'ai créé un script que j'utilise pour nettoyer mon dossier de documents de temps en temps, car je suis en voie de TOC et fatigué d'être surchargé APP & comme la simplicité.
Je l'ai fait dans un effort pour améliorer et fournir une solution alternative.
Enfin, pour le fichier d'icônes de @ kenche, cela ne semble pas exister sur mon mac car je n'ai pas modifié les icônes de mon dossier, mais vous pouvez le faire dans l'inspecteur. En faisant glisser une image en haut à gauche, il créera le Icon^M
fichier sur ce répertoire.
Pour les trouver aussi, vous pouvez exécuter:
(Devriez-vous être paranoïaque si vous trouvez un faux positif, utilisez: ctrl+ v ctrl+ mau lieu de?)
find ~/Documents -type f -name 'Icon?' -print;
# and to remove
find ~/Documents -type f -name 'Icon?' -print -delete;
Veuillez, comme @slhck l'a indiqué ci-dessus: Certains services ou applications peuvent même avoir besoin de certains répertoires pour exister. Cela s'applique également aux fichiers DS_Store & Icon, VEUILLEZ être conscient de ce que vous faites. Remarque: ce script ne demandera pas de confirmation. Il supprimera tous les répertoires qu'il peut. c'est-à-dire ceux où vous avez des autorisations pour supprimer. Ils ne seront pas mis à la poubelle mais disparus pour toujours.
#!/bin/bash
# =============================================================================
# MAC OSX HIGH SIERRA 10.13.4 (17E199)
# Terminal: Version: 2.8.2 64-Bit (Intel): Yes
# Terminal Location: /Applications/Utilities/Terminal.app
# =============================================================================
# Terminal CLEAN UP YOUR DOCUMENTS FOLDER.
# =============================================================================
# START WHAT IS BELIEVED TO BE EMPTY NOW.
# =============================================================================
echo 'Searching Documents for empty folders...'
find ~/Documents -type d -empty;
# =============================================================================
# SHOW & THEN REMOVE ALL MAC OS DS_Store FILES
# =============================================================================
echo 'Searching Documents for DS_Store files...'
find ~/Documents -type f -name ".DS_Store" -print;
echo 'Removing DS_Store files...'
find ~/Documents -type f -name ".DS_Store" -print -delete;
# =============================================================================
# SHOW & THEN REMOVE ALL MAC OS ZERO SIZED FILES
# =============================================================================
echo 'Searching Documents for ZERO file sized files...'
find ~/Documents -type f -empty;
echo 'Removing ZERO file sized files...'
find ~/Documents -type f -empty -delete;
# =============================================================================
# SHOW & THEN REMOVE Icon^M FILES
# USE THE ? MARK FOR EASE OF USE YOU CAN ALSO SUB 'CTRL + V & CTRL + M' FOR ^M
# =============================================================================
echo 'Searching Documents for Icon files...'
find ~/Documents -type f -name 'Icon?' -print;
echo 'Removing Icon files from Documents...'
find ~/Documents -type f -name 'Icon?' -print -delete;
# SEEMINGLY THE SAME AS
# find ~/Documents -type f -size 0 -print
# find ~/Documents -type f -size 0 -print -delete
# =============================================================================
# SHOWCASE NEW FOUND EMPTY FOLDERS
# =============================================================================
echo 'Showcasing new result of existing and new found empty folders...'
find ~/Documents -type d -empty;
echo 'Deleting result of empty folders...'
find ~/Documents -type d -empty -delete;
echo 'Showcasing the removal of said, 'empty folders'...'
find ~/Documents -type d -empty;
Fin du script.
Le script peut être vu ici sur GitHub
À propos des icônes qui représentent des fichiers sur votre Mac
Est-il possible de supprimer tous les dossiers contenant uniquement .DS_Store de manière récursive?
Rechercher des dossiers et sous-dossiers contenant uniquement ".DS_Store"
Comment trouver tous les fichiers de zéro octet dans un répertoire, y compris les sous-répertoires