La mia directory di livello superiore è data. datainclude diverse directory e queste directory hanno sottodirectory. Ho bisogno di rimuovere tutti i file e le directory all'interno data/tranne alcuni file in alcune directory.
Ad esempio, i dati includono le directory 100e 101. Voglio solo mantenere a.txte b.txtfile in 100/e c.txte d.txtfile in 101/durante la rimozione di tutti gli altri file e le directory in 100e 101.
Esempio:
.
├── 100
│ ├── a.txt
│ ├── b.txt
│ ├── c.txt
│ └── d.txt
└── 101
├── a.txt
├── b.txt
├── c.txt
└── d.txt
Uso il rm -rf !(a.txt|b.txt)comando ma non posso applicare questo comando automaticamente per ogni directory.