Adicionando Extensões em Arquivos

Publicado por Sandro Marcell em 14/05/2012

[ Hits: 9.468 ]

Blog: http://sanmarcell.wordpress.com

 


Adicionando Extensões em Arquivos



Para adicionar extensão aos arquivos que não as possue, use o comando: rename (ou prename, dependendo da distro) da seguinte forma:

rename 's/(.+)/$1\.EXTENSÃO/' DIRETÓRIO/*

Exemplo: Para adicionar a extensão '.jpg':

rename 's/(.+)/$1\.jpg/' /home/user/imagens/*

Obs.: Note que não há distinção dos tipos de arquivos, ou seja, todos os arquivos, ao final, terão '.jpg' como extensão, independente de serem ou não imagens!

Ah, se no diretório de destino existirem outros arquivos já com extensão, então, para adicionar a extensão desejada somente aos sem, use a dupla: find + rename

find DIRETÓRIO -type f \! -name "*.*" -print | rename 's/(.+)/$1\.EXTENSÃO/'

Mais detalhes? Salve seu dia, consulte as man pages:

man rename
$ man find


Falou! ;)

Outras dicas deste autor

Renomeando arquivos simultaneamente com apenas uma linha de comando

Substituir espaços em branco por underlines em nome de arquivos

Squid - Limitando números de conexões simultâneas

AWK - Validando endereços IPv4

php-meter: Medidor que mostra o consumo de banda no link de internet

Leitura recomendada

Renomeando múltiplos arquivos com mmv

Comando CHMOD (Change Mode) no Modo Octal

Removendo a mensagem de erro vboxclient na inicialização LinuxMint-17x e LMDE-2

Passwd não alterando senha de usuário

Comando para manipulação de pacotes PKGTool

  

Comentários
[1] Comentário enviado por removido em 14/05/2012 - 11:55h

#! /bin/bash

for n in $(ls | xargs)
do
mv $n $n\.$(file $n | cut -d" " -f 2)
done

esse aí eh o que eu fiz para o mesmo propósito. ele coloca a extensão de acordo com o tipo do arquivo.
não eh 100% tbm mas é um adianto!!!

to colocando aqui a fim de dar uma ideia pra fazermos algo mais próximo do ideal!



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts