I seguenti due comandi, usati in un Terminale, possono realizzare ciò che hai chiesto, la prima creazione di una struttura di directory gerarchica di destinazione contenente i file *. mp3 e il secondo comando che cancella i file *. mp3 dalla struttura di directory gerarchica di origine .
Nota: assicurati di disporre di backup appropriati prima di utilizzare il secondo comando poiché un errore può essere fatale.
Apri terminale.
Per impostazione predefinita, Terminal si apre sulla directory principale di uno quindi utilizzerò come esempio il punto di partenza e la directory musicale come struttura della directory gerarchica di origine / em>.
Questo primo comando creerà una copia della struttura di directory gerarchica musicale contenente solo file *. mp3 nella directory di destinazione . In altre parole, dopo l'esecuzione del primo comando, ci sarà una directory di destinazione contenente la stessa struttura gerarchica delle directory a partire da Musica all'interno di directory di destinazione che contiene solo file *. mp3 e solo le directory dalla sorgente che contengono *. mp3 file. Se una determinata directory sorgente non contiene un file *. Mp3 , allora quella directory non viene creata nella struttura gerarchica della directory di destinazione .
Nota: la riga di comando completa si estende fuori dalla vista senza scorrimento orizzontale.
find ./Music -name "*.mp3" -type f -print0 | xargs -0 -I '{}' /usr/bin/rsync -avR "{}" "./mp3 files only/"
Nota: comando completo mostrato su due righe per chiarezza:
find ./Music -name "*.mp3" -type f -print0 | \
xargs -0 -I '{}' /usr/bin/rsync -avR "{}" "./mp3 files only/"
Quando termina il comando precedente ci sarà una directory nella mia home directory chiamata "solo file mp3" e all'interno di quel directory ci sarà una struttura di directory gerarchica musicale contenente solo file *. mp3 . Nota: se la directory di destinazione non esiste, verrà creata automaticamente.
Ora che i file *. mp3 sono stati copiati dalla struttura della directory gerarchica di origine della musica nella directory "solo file mp3" I file *. mp3 possono essere rimossi dalla struttura della directory gerarchica musicale di origine con il seguente comando.
find ./Music/ -name "*.mp3" -delete
Questo è tutto, i file *. mp3 insieme alla loro struttura gerarchica delle directory sono stati copiati in una nuova posizione e *. mp3 file cancellati dalla fonte .