shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] find ( exec/xargs) e for


From: George Robinson
Subject: Re: [shell-script] find ( exec/xargs) e for
Date: Thu, 15 Oct 2009 17:24:42 -0300

Olá Miranda,

Muito obrigado pela sua ajuda.

Eu criei um nao tao elegante quando o seu:

#!/bin/bash

DIR="/opt/shoutcast/bin/wma/"

find "${DIR}" -iname "*.wma" -exec ffmpeg -i {} -acodec libmp3lame -ab 128k
-ac 2 -ar 44100 {}.mp3 \;

find "${DIR}" -iname ".*" -prune -o -exec rename 's/\.wma.mp3$/\.mp3/i' {} +

find "${DIR}" -iname "*.wma" -exec rm -f {} \;


... mas funciona tbm...

Att,

2009/10/15 miranda <address@hidden>

> fazer um script a parte com o comando de conversão :
> ffmpeg -i $1 -acodec ... ${1%.wma}.mp3
> ( digamos que o nome seja converte.sh e esteja no seu PATH)
> então
> find /opt/shoutcast/bin/ -iname "*.wma" -exec converte.sh {} \;
>
> On Thu, 2009-10-15 at 16:43 -0300, George Robinson wrote:
> >
> > consegui fazer com o seguinte script:
> >
> > #!/bin/bash
> >
> > find /opt/shoutcast/bin/ -iname "*.wma" -exec ffmpeg -i {} -acodec
> > libmp3lame -ab 128k -ac 2 -ar 44100 {}.mp3 \;
> >
> > porém ele converte como "arquivo.wma.mp3"
> >
> > alguem poderia dar uma sugestao??
> >
> > Att,
> >
> > 2009/10/15 George Robinson <address@hidden>
> >
> > > oi thiago, na verdade, foi so erro de digitaçao... tanto que ele
> > executa o
> > > script... apenas nao consegue realizar a tarefa...
> > >
> > > vou testar as sua sugestao...
> > >
> > > Att,
> > >
> > > 2009/10/15 Thiago Diniz da Silveira <address@hidden>
> > >
> > >
> > >>
> > >> Dando uma olhada rápida está faltando uma " (aspas) no FILE=`find
> > >> "${DIR}...`
> > >>
> > >> Para pegar cada entrada no arquivo TXT você pode usar um for assim:
> > >>
> > >> for var in $(cat arquivo.txt); do
> > >> echo $var;
> > >> done
> > >>
> > >> 2009/10/15 George Robinson
> > <address@hidden<george.robinson.br%40gmail.com>
> > >> >
> > >>
> > >>
> > >> >
> > >> >
> > >> > Mais uma vez estou recorrendo à lista após quebrar a cabeça com
> > um
> > >> script
> > >> > que nao dá certo.
> > >> >
> > >> > Eu tenho o seguinte script:
> > >> >
> > >> > DIR="/opt/shoutcast/bin"
> > >> > FILE=`find "${DIR} -iname "*.wma"
> > >> > CONVERT=`ffmpeg -i "$FILE" -acodec libmp3lame -ab 128k -ac 2 -ar
> > 44100
> > >> > "${FILE%.wma}.mp3"`
> > >> >
> > >> > find "${DIR}" -iname "${FILE}" | xargs "${CONVERT}"
> > >> >
> > >> > O que acontece é que se eu tenho 1 arquivo apenas no diretorio,
> > ele faz
> > >> a
> > >> > conversao... nao acerta o nome (salva como *.mp3), mas faz a
> > >> conversao...
> > >> > quando tenho multiplos arquivos, ele nao faz de jeito nenhum a
> > >> conversao...
> > >> > eh como se o find montasse uma lista do tipo
> > >> arquivo\n/arquivo2\n/arquivo3
> > >> > e
> > >> > assim por diante... o que eu consegui foi estrever a saida do
> > find em um
> > >> > arquivo TXT, porém eu nao sei como fazer para pegar cada entrada
> > no
> > >> arquivo
> > >> > e aplicar a conversao pelo FFMPEG.
> > >> >
> > >> > Gostaria que por gentileza, quem tiver uma ideia de como efetuar
> > isto,
> > >> pode
> > >> > ser com FOR, WHILE, IF... eu realmente nao sei mais como
> > continuar este
> > >> > escript.
> > >> >
> > >> > Att,
> > >> > --
> > >> > George Robinson
> > >> > Analista de Suporte
> > >> > Tel: (21) 8843-7251 / (21) 8140-2351
> > >> >
> > >> > [As partes desta mensagem que não continham texto foram
> > removidas]
> > >> >
> > >> >
> > >> >
> > >>
> > >> [As partes desta mensagem que não continham texto foram removidas]
> > >>
> > >>
> > >>
> > >
> > >
> > >
> > > --
> > > George Robinson
> > > Analista de Suporte
> > > Tel: (21) 8843-7251 / (21) 8140-2351
> > >
> >
> > --
> > George Robinson
> > Analista de Suporte
> > Tel: (21) 8843-7251 / (21) 8140-2351
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
> >
> >
>
>
>
> ------------------------------------
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
> Links do Yahoo! Grupos
>
>
>


-- 
George Robinson
Analista de Suporte
Tel: (21) 8843-7251 / (21) 8140-2351


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]