La mia directory di livello superiore è data
. data
include 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 100
e 101
. Voglio solo mantenere a.txt
e b.txt
file in 100/
e c.txt
e d.txt
file in 101/
durante la rimozione di tutti gli altri file e le directory in 100
e 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.