Como exemplo, tenho um monte de .oggarquivos no meu Downloadsdiretório, então ... para converter em lote um monte de .oggarquivos em um determinado diretório para .mp3arquivos no mesmo diretório, fiz o seguinte no Terminal :
cd Downloads
for f in *.ogg; do ffmpeg -i "$f" "${f%.*}.mp3"; done
Isso criou um .mp3arquivo para cada .oggarquivo que tenho no meu diretório Downloads .
Portanto, usando o caminho do diretório, faça o seguinte:
cd ~/Downloads/Minecraft+Sound+Pack+1.13/step
for f in *.ogg; do ffmpeg -i "$f" "${f%.*}.mp3"; done
Dito isso, e considerando que você lida com um pacote de arquivos de som baixado da Internet, Minecraft + Sound + Pack + 1.13.zip, que contém 131 diretórios , alguns aninhados com 3 ou mais de profundidade e 1406 .ogg arquivos, dos quais alguns dos nomes de arquivos são do mesmo modo, eu lidaria com a situação com as seguintes condições em mente.
- Eu baixei o
Minecraft+Sound+Pack+1.13.ziparquivo da Internet.
- Expanda o arquivo zip clicando duas vezes nele na minha pasta Downloads no Finder. Observe que isso ocorre porque eu não deixo o navegador descompactar os arquivos compactados. Isso também mantém uma cópia do arquivo zip, caso eu ainda precise dela posteriormente.
Com isso feito, usei o seguinte exemplo de script bash para converter cada .oggarquivo na estrutura de pastas hierárquicas em um .mp3arquivo no mesmo local. Em seguida, exclua os .oggarquivos, pois ainda tenho o arquivo zip original.
#!/bin/bash
# s="/Path/To/Source/Files"
s="$HOME/Downloads/Minecraft+Sound+Pack+1.13"
for d in $(find "$s" -type f -iname '*.ogg' | sed -E 's|/[^/]+$||' | sort -u); do
cd "$d"
for f in *.ogg; do
ffmpeg -i "$f" "${f%.*}.mp3"
rm "$f"
done
done
- Você só precisa alterar o valor de
s="..."como ou se necessário e, como regra geral, gosto de usar $HOMEno lugar de ~.
Observe que é assim que escolho lidar com a situação no momento e há muitas maneiras diferentes de escrever um script. No entanto, acredito que alcança o objetivo final de manter intacta a estrutura de pastas hierárquicas dos 131 diretórios com os 1406 .mp3 arquivos convertidos .
A propósito ... No meu antigo MacBook Pro, (Retina, 15 polegadas, início de 2013) Intel Core i7 de 2,8 GHz, foram necessários pouco menos de 9 minutos para processar os .ogg arquivos 1406 .