Donc, il semble y avoir quelques questions à propos de la suppression de fichiers/répertoires correspondant à certains cas, mais je cherche exactement le contraire: Supprimer TOUT dans un dossier qui NE FAIT PAS correspond à mes exemples fournis.Supprimer tous les fichiers/répertoires à l'exception de deux répertoires spécifiques
Par exemple, voici un arborescence exemple:
.
|-- coke
| |-- diet
| |-- regular
| `-- vanilla
|-- icecream
| |-- chocolate
| |-- cookiedough
| |-- cupcake
| | |-- file1.txt
| | |-- file2.txt
| | |-- file3.txt
| | |-- file4.txt
| | `-- file5.txt
| `-- vanilla
|-- lol.txt
|-- mtndew
| |-- classic
| |-- codered
| |-- livewire
| | |-- file1.txt
| | |-- file2.txt
| | |-- file3.txt
| | |-- file4.txt
| | `-- file5.txt
| `-- throwback
`-- pepsi
|-- blue
|-- classic
|-- diet
`-- throwback
Je veux supprimer tout sauf les fichiers test/icecream/petit gâteau/et test/mtndew/Livewire /. Tout le reste peut aller, y compris la structure du répertoire. Alors, comment puis-je y parvenir? Langues Cela ne me dérangerait pas d'être dans: bash ou python.
essayé, et il dit le texte suivant: find/home/Phuzion/test/\\ (-prune 'icecream/petit gâteau /' \\) -delete trouver: les chemins doivent précéder l'expression – phuzion
De la page man pour find: "Parce que -delete implique -depth, vous ne pouvez pas utilement utiliser -prune et -delete ensemble." –
La syntaxe correcte serait plus proche de "find $ répertoire -path ./pepsi/diet -prune -o -exec some-command '{}' \;" de toute façon pour éliminer ce message d'erreur. –