Adicionando Extensões em Arquivos

Publicado por Sandro Marcell em 14/05/2012

[ Hits: 9.435 ]

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

Fluxbox: Wallpapers diferentes em cada área de trabalho

CGI + Shell Script: gerando listagem de IPs disponíveis em sua rede

Detectando conflitos de IP

Wget: Verificando existência de arquivo remoto

Jogando Tetris via terminal

Leitura recomendada

O comando wc

Visualizando tempo de conexão com o ac

Como descompactar arquivos tar.xz no Ubuntu/Debian e derivados

Arch Linux - Como listar comando e seu respectivo pacote

Aliases - apelidos para comandos

  

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