Renomeando centenas de extensões de uma só vez.

Dias atrás me deparei com uma situação que até então não tinha me ocorrido. Uma colega de trabalho teve os dados do seu pendrive totalmente renomeados para uma extensão do tipo “CHK “. Ela estava aflita, pois o conteúdo era importante ,  além das fotos, os trabalhos da faculdade também haviam sido renomeados.
Abrindo o pendrive, vi que tinha 4 pastas: “fotos”, “trabalhos”, “músicas” e a última “monografia”. A primeira tentativa foi de recuperar os arquivos da pasta trabalho, uma ideia que veio a mente foi renomear a extensão do primeiro arquivo que no caso estava assim: nome_do_arquivo.CHK para nome_do_arquivo.doc. E realmente funcionou. Os dados foram preservados.

Após isso abri o arquivo normalmente e pude visualizar o seu conteúdo. Só que na pasta “trabalho” deveria ter uns 200 arquivos com a extensão CHK, como não sou louco nem nada para renomear um de cada vez pensei em um script que fizesse isso de forma rápida e sem muito trabalho, o qual compartilho com vocês hoje.

/*********************************
Autor: Fernando Krein Pinheiro
Data: 22/08/2010
Linguagem: Shell Script
========= IMPORTANTE ===========
O código esta livre para usar,
citar e compartilhar desde que
mantida sua fonte e seu autor.
Obrigado.
*********************************/
 #!/bin/sh
 for arquivo in *.CHK
 do

 # Depois de "arquivo" voce deverá mudar a extensão novamente para extensão
 # do seu arquivo, e logo apos o ")" voce devera escolher a extensao para
 #renomear os arquivos. No meu caso eu queria todos os arquivos com
 #extensão "doc".

         newname=$(basename $arquivo CHK)doc
         mv $arquivo $newname
 done

Na linha: “for arquivo in *.CHK (Voce deverá mudar o CHK pela extensão que esta seu arquivo).
Na linha “newname =$ (basename $arquivo CHK)doc” (Mude a extensão CHK por aquela que seu arquivo esta e que você mudou na linha anterior.)
Note que logo após o final do parenteses existe a extensão “doc” (Você deve mudar essa extensão para a extensão que deseja que seus arquivos fiquem ao final da execução do script).

Lembrando que para executar o script o mesmo deve estar na pasta onde encontram-se os arquivos a serem renomeados e você deverá dar permissão de execução para tal. Copie o fonte e cole em um arquivo texto com o nome de RenomeiaArq.sh

Ex.: no terminal digite:
$ chmod +x RenomeiaArq.sh

Logo após digite:
$ ./RenomeiaArq.sh

E pronto, seus arquivos estarão com as extensões totalmente renomeadas.

Confira uma versão desse mesmo post AQUI

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s