Depuis la fenêtre du terminal:
Lorsque j'utilise la rm
commande, elle ne peut supprimer que des fichiers.
Lorsque j'utilise la rmdir
commande, elle supprime uniquement les dossiers vides.
Si j'ai un répertoire imbriqué avec des fichiers et des dossiers dans des dossiers contenant des fichiers, etc.
Si cela fait une différence, j'utilise le shell mac bash du terminal, pas Microsoft DOS ou linux.
Réponses:
-r "récursif" -f "forcer" (supprimer les messages de confirmation)
Faites attention!
la source
brew install trash
alorstrash -rf some_dir
ceci déplacera le répertoire indésirable dans votre corbeille au lieu de simplement disparaître le style Prestige dans l'éther. ( source )Supprimerait tout (dossiers et fichiers) du répertoire actuel.
Mais fais attention! N'exécutez cette commande que si vous êtes absolument sûr que vous êtes dans le bon répertoire.
la source
ls -R *
premier pour voir ce qui sera supprimé parrm -rf *
Oui il y a. L'
-r
option indiquerm
être r ecursive, et de supprimer toute la hiérarchie de fichiers racine à ses arguments; en d'autres termes, si on lui donne un répertoire, il supprimera tout son contenu, puis effectuera ce qui est effectivement unrmdir
.Les deux autres options que vous devez connaître sont
-i
et-f
.-i
signifie i nteractive; ilrm
vous invite avant de supprimer chaque fichier.-f
signifie f orce; il va de l'avant et supprime tout sans demander.-i
est plus sûr, mais-f
plus rapide; ne l'utilisez que si vous êtes absolument sûr de supprimer la bonne chose. Vous pouvez les spécifier avec-r
ou non; c'est un cadre indépendant.Et comme d'habitude, vous pouvez combiner des commutateurs:
rm -r -i
c'est justerm -ri
, etrm -r -f
c'estrm -rf
.Notez aussi que ce que vous apprenez applique
bash
sur tous les Unix OS: OS X, Linux, FreeBSD, etc. En fait,rm
la syntaxe « est le même dans presque tous les shell sur tous les Unix OS. OS X, sous le capot, est vraiment un système BSD Unix.la source
"rm -d"
, ce qui supprime les fichiers ou les répertoires vides. Pourtant, +1 pour le point que OS X est BSD en interne.Je cherchais donc partout un moyen de supprimer tous les fichiers d'un répertoire, à l'exception de certains répertoires et des fichiers que je voulais garder. Après de nombreuses recherches, j'ai imaginé un moyen de le faire en utilisant find.
Essentiellement, il utilise regex pour sélectionner les répertoires à exclure des résultats, puis supprime les fichiers restants. Je voulais juste le mettre ici au cas où quelqu'un d'autre en aurait besoin.
la source