Quindi, sembra che ci siano alcune domande che richiedono la rimozione di file/directory corrispondenti a determinati casi, ma sto cercando l'esatto opposto: Elimina TUTTO in una cartella che NON FA abbinare i miei esempi forniti.Elimina tutti i file/directory eccetto due directory specifiche
Per esempio, qui è un albero di directory di esempio:
.
|-- 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
voglio eliminare tutto, ma i file di test/gelato/bigné/e prova/mtndew/livewire /. Tutto il resto può andare, inclusa la struttura della directory. Quindi, come posso ottenere questo? Lingue a cui non dispiacerebbe essere qui: bash o python.
provato questo, e dice il seguente: find/home/Phuzion/test/\\ (-prune 'gelato/bigné /' \\) -delete ritrovamento: i percorsi devono precedere l'espressione – phuzion
Dalla pagina man per trovare: "Poiché -eliminare implica -depth, non è possibile utilizzare utilmente -prune e -delete insieme." –
La sintassi corretta sarebbe più simile a "trova $ directory -path ./pepsi/diet -prune -o -exec some-command '{}' \;" comunque per eliminare quel messaggio di errore. –