Renomear Arquivos

Publicado por Fábio Berbert de Paula 13/11/2002

[ Hits: 18.908 ]

Homepage: https://www.facebook.com/jedi.fabio

Download renomear_arquivos.zip




Renomear_arquivos.sh é um shell-script usado para renomear todos os arquivos que contem espaços em branco em seu nome. Sendo assim, um arquivo com o nome "eu sou cool.txt" seria renomeado para "eu-sou-cool.txt".




Esconder código-fonte

#!/bin/bash
# ##########################################
# Author: Fábio Berbert de Paula
# fabio@vivaolinux.com.br
#
# Favor me mandar as fotos de sua irmã e/ou 
# prima (peladas?)
# ##########################################

if [ "$#" != 2 ] 
then
   echo ""
   echo "Use: $0 <dir> <extensao>"
   echo "Exemplo: $0 /musicas mp3"
   echo ""
   exit
fi

DIR="$1"
EXT="$2"
echo ""
echo "-------------------------------------------------"
echo "Renomeando arquivos do diretório $DIR ..."
echo ""
CONT="0"
ls *.${EXT} | while read ARQ
do
   NOVO=`echo $ARQ | tr ' ' '-'`
   if [ "$NOVO" != "$ARQ" ]
   then
      echo "$ARQ -> $NOVO"
      mv "$ARQ" "$NOVO"
      CONT=`expr $CONT + 1`
   fi
done

echo ""
echo " Trabalho feito! $CONT arquivo(s) renomeado(s)."
echo "-------------------------------------------------"

Scripts recomendados

Monitora

Calculo de médias da UNIP

Bloquear contas em servidor Zimbra após 45 dias

Algoritmo Fisher-Yates shuffle

Troca automatica de papel de parade no fluxbox

Comentários
[1] Comentário enviado por israeldiogo em 29/08/2003 - 17:30h

para que serve e como é utilizado os comandos
expre
tr

[2] Comentário enviado por guimpel em 11/12/2003 - 15:21h

Caro amigo preciso de sua ajuda,

Tenho de criar um Script, onde eu digite somente o ip da rede, (Ex:
10.10.10.1 rede) e este script adicione o ip, mascara e broadcast, ouseja some um (1) no final do numero da rede para ser o gateway, depois 2 para o ip e tres para o broadcast, a mascara sempre vai ser 252.

Grato

[3] Comentário enviado por lucianogf em 27/07/2006 - 03:34h

O camarada...

este script é bem interessante, mas tá faltando uma coisa nele, onde está:

ls *.${EXT} | while read ARQ

deveria ser:

ls $DIR/*.${EXT} | while read ARQ

valeu
[]'s

[4] Comentário enviado por pibarnas em 10/09/2006 - 10:20h

Meu amigo, esse seu script é uma mão na roda!!! MUITO OBRIGADO MESMO!!!! EXTREMAMENTE ÚTIL!

Grande abraço,

PI

[5] Comentário enviado por edulimaabreu em 29/10/2006 - 00:25h

Script bem legal :)
Mas para usa-lo eh necessario estar na pasta dos arquivos a serem renomeados.
Para resolver isso eu acrecentei uma linha, assim os arquivos sao renomeados nao importando a pasta em q vc está.

Somente acrescentei um "cd diretorio"
CONT="0"
cd $DIR
ls *.${EXT} | while read ARQ

Falow :)

[6] Comentário enviado por thudojorge em 13/12/2007 - 12:34h

opa!

bastante interesante vai ajudar muito na minha pesquisa...

valew


Contribuir com comentário