Movendo pastas com uma palavra-chave específica no nome para uma nova pasta

1

Eu quero mover todas as minhas pastas de música FLAC para uma nova pasta chamada lossless. Atualmente, as pastas FLAC estão dentro de uma pasta com formatos com perdas, como MP3 e AAC.

Eu quero filtrar as pastas com "flac" no nome delas e movê-las para um novo diretório.

Como posso conseguir isso?

    
por unix2046 24.07.2018 / 12:45

3 respostas

1

Você pode usar:

 mv *flac* directory_name

O * flac * é uma expansão de arquivo (não regex, obrigado Sparhawk pela correção) para nomes de arquivos contendo a palavra 'flac' dentro de qualquer número de caracteres para capturar:

  • hello_flac.mp3
  • file.format_flac_somerandomwords
  • music_file.flac

Se você quiser apenas arquivos terminados em .flac use

mv *.flac directory_name

    
por 24.07.2018 / 15:23
0

Tente,

find /path/to/flac -type d -iname '*flac*' -exec mv -t /path/to/newDirectory {} +
    
por 24.07.2018 / 12:58
0

Supondo que estamos lidando com um diretório de nível superior único em que essas pastas devem ser encontradas:

mv -i somefolder/*flac*/ path/to/lossless

Isso moveria todas as pastas que tivessem a string flac em seus nomes da pasta de destino indicada, enquanto o alertava ao tentar sobrescrever qualquer coisa já existente no diretório de destino.

Ao adicionar / no final do padrão de nome de arquivo, apenas correspondemos aos diretórios. Dessa forma, não moveremos arquivos regulares que tenham correspondido ao padrão sem o / .

    
por 24.07.2018 / 16:18