Elimina la cartella con condizioni specifiche

1

Ho bisogno di uno script per eliminare una cartella, solo se la cartella non contiene file multimediali con estensione avi o mp4 .

    
posta Edgard 05.03.2014 - 04:53
fonte

1 risposta

1

Se tutte le cartelle da rimuovere si trovano direttamente nella cartella contenente e tutti i file mp4 e avi si trovano direttamente nelle cartelle mantenute:

for d in */;do ls "$d"|grep -Eq '.*\.(mp4|avi)$'||echo rm -r "$d";done

Se i file mp4 e avi possono trovarsi in sottocartelle delle cartelle conservate:

for d in */;do [[ $(find "$d" -iname \*.mp4 -o -iname \*.avi) ]]||echo rm -r "$d";done

Se le cartelle da rimuovere possono trovarsi in sottocartelle della cartella contenente:

find . -type d|while read d;do ls "$d"|grep -Eq '.*\.(mp4|avi)$'||echo rm -r "$d";done

    
risposta data 05.03.2014 - 10:14
fonte

Leggi altre domande sui tag