[Ubuntu-BR] SCRIPT para converter vários arquivos

hamacker sirhamacker em gmail.com
Segunda Dezembro 15 16:37:39 UTC 2008


Quando voce estiver mais experiente com scripts bash, vai ver como é
um saco fazer laços 'for' envolvendo arquivos com espaços entre o
nome. Toda a lógica simplificada tem que ser alterada para algo mais
complexo assim :

find /caminho/para/os/arquivos -name *.rmvb >/tmp/lista-dos-arquivos.txt
while read LINHA ; do
 nomearq="$LINHA"
 bla, bla, bla...
done </tmp/lista-dos-arquivos.txt

No exemplo acima, a variavel LINHA recebe uma linha por vez do arquivo
/tmp/lista-dos-arquivos.txt, voce pega o valor de LINHA transforma-o
no nome do arquivo que será processado e usa-o durando o laço.

2008/12/15 Gustavo { Ozzy } <linux em paradoxo.inf.br>:
> retorna essa mensagem:
>
> basename: operando extra `Badlands.rmvb'
>
> porém, converte o arquivo, mas somente com o nome ".avi"
>
>
>
> Iuri Diniz escreveu:
>
>> for i in *.rmvb; do
>>     BASENAME=`basename $i .rmvb`
>>     FROM="$i"
>>     TO="${BASENAME}.avi"
>>     mencoder "$FROM" \
>>         -oac mp3lame \
>>         -lameopts br=192 \
>>         -ovc lavc \
>>         -lavcopts vcodec=mpeg4:vhq \
>>         -o "$TO"
>> done
>>
>> faltou o r no mencoder
>>
>> On Mon, Dec 15, 2008 at 12:33 PM, Iuri Diniz <iuridiniz em gmail.com> wrote:
>>
>>> for i in *.rmvb; do
>>>    BASENAME=`basename $i .rmvb`
>>>    FROM="$i"
>>>    TO="${BASENAME}.avi"
>>>    mencode "$FROM" \
>>>      -oac mp3lame \
>>>      -lameopts br=192 \
>>>      -ovc lavc \
>>>      -lavcopts
>>> vcodec=mpeg4:vhq \
>>>      -o "$TO"
>>> done
>>>
>>
>>
>> --
>> Iuri Diniz
>> http://iuridiniz.com [Sou um agitador, não um advogado]
>> http://blog.igdium.com [Linux on Limbo]
>>
>>
>
>
> --
> Mais sobre o Ubuntu em português: http://www.ubuntu-br.org/comece
>
> Lista de discussão Ubuntu Brasil
> Histórico, descadastramento e outras opções:
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-br
>




More information about the ubuntu-br mailing list