Eu estava tentando converter alguns arquivos .ape em arquivos .flac usando avconv
na linha de comando; obviamente, avconv
não é o ponto principal aqui; sua sintaxe é bem direta avconv -i inputApeFile.ape outputFlacFile.flac
,.
O ponto é que os arquivos estão aninhados em mais subpastas; ou seja, tenho a pasta Artista e várias subpastas de CD, cada uma contendo arquivos .ape diferentes. Como posso converter todos os arquivos e salvá-los na mesma pasta do arquivo original, mas com a extensão .flac?
Se possível, eu gostaria de usar apenas o comando shell em uma única linha sem usar scripts. Eu acho que deveria ser algo assim
avconv -i 'ls -R | grep ape' '???'
mas eu estou preso com a segunda parte (talvez usando sed
??!?)
fonte
Agora que o ffmpeg é preferido em vez do avconv novamente, e existem muitos computadores de baixo custo (US $ 60 para um XU4 de 8 núcleos), sugiro o seguinte para ser mais eficaz;
fonte
comando de uma linha que você estava procurando: o
find -type f -name "*.ape" -print0 | xargs -0 avconv -i
find
comando fornecerá apenas os arquivos que terminam com .apeo
find
comando fornecerá o caminho relativo aoavconv
comando para que ele possa converter esses arquivos e mantê-los na mesma pasta que o arquivo de entrada (por exemplo, .ape).find
O comando encontrará todos os arquivos nesse diretório, independentemente da profundidade em que eles são mantidos no subdiretóriofonte
avconv
não pode receber arquivos de entrada do STDIN assim.