Opa Se quser procurar por mais extensões, poderia usar com um vetor, ficaria mais ou menos assim:
#------------ RENOMEAR(){ LISTA="png gif jpg ico JPG PNG ICO GIF" for BUSCA in $LISTA do I=0 BUSCA[I]=${BUSCA} I=$(echo ${I}+1 | bc) ls *.${BUSCA} 2> /dev/null | while read ARQ do NOVO=$( echo $ARQ | tr ' ' '_' ) if [ "$NOVO" != "$ARQ" ] then echo "$ARQ -> $NOVO" mv "$ARQ" "$NOVO" fi done done } #--------- -- Raul Libório UniJorge Redes - www.redesfja.com rauhmarutsªhotmailºcom Linux user#4444581 [(55) 71] 9246 9828 / ` / .------. |"""""""| |Linux | |inside| `--------' Dúvidas: enviar para /dev/null . Respondei assim que possível." _____________________________ "Nada se cria, tudo se compila." 2008/7/23 Rafael Tomelin <[EMAIL PROTECTED]>: > Opa, > > Achei as duas soluções legais, mas como manjo pouco de shell script, > gostaria de juntar as duas opções. > > Já fiz algo do tipo: > > EXT="mp3" > > ls *.${EXT} | while read ARQ > do > NOVO=`echo $ARQ | tr ' ' '-'` > if [ "$NOVO" != "$ARQ" ] > then > NOVO2=`echo $NOVO | tr '-' '_'` > NOVO3=`echo $NOVO2 | tr -s '_'` > echo "$ARQ -> $NOVO" > mv "$ARQ" "$NOVO3" > CONT=`expr $CONT + 1` > fi > done > > Porém nao deu muito certo, pois o "ARQ" está com o nome de arquivo com > espaço e sem a "\" > > 2008/7/23 Julio C. Neves <[EMAIL PROTECTED] <julio.neves%40gmail.com> > >: > > > > Aê Rafael, > > uma solução *muito pouco* ortodoxa... ;) > > > > Antigos=$(find /home/dados -name "* *" -o -name '*\*') # Arqs com \ e > > branco > > no nome > > Novos=$(tr -s ' \\' '__' <<<"$Antigos") # compacta \ e branco e > transforma > > em _ > > paste <(echo "$Antigos") <(echo "$Novos") | xargs -tL1 mv > > > > Neste último cmd o paste junta as linhas das 2 variáveis criadas. O xargs > > pega a saída linha-a-linha (-L1) e coloca atrás (epa!) do mv. A opção -t > do > > xarqs é só para mostrar o que ele está fazendo. > > > > -- > > Abraços, > > Julio > > *Em setembro estarei dando um treinamento > > Shell em Brasília (em 2 fins de semana). > > Mais informações: www.tecnologiabr.com.br > > Tel: (61) 3354-3162 > > > > * > > 2008/7/23 Rafael Tomelin <[EMAIL PROTECTED]<rafael.tomelin%40gmail.com> > <rafael.tomelin%40gmail.com> > > >: > > > > > Olá pessoal, > > > > > > Gostaria de ver com vocês, como que faço um script que busca dentro de > um > > > determinado diretório "/home/dados" e sub-diretórios > > > "/home/dados/contabilidade", *arquivos* que contenham espaço no nome ou > > > "\". Ex.: "contabilidade discal" ou "contabilidade\patrimonial" ou > > > "contabilidade\sei lah \ o que". > > > > > > E alterar-se essas caracteres por "_". > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > > -- > > Abraços, > > Julio > > Em setembro estarei dando um treinamento > > Shell em Brasília (em 2 fins de semana). > > Mais informações: www.tecnologiabr.com.br > > Tel: (61) 3354-3162 > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > [As partes desta mensagem que não continham texto foram removidas]