Adicionando Extensões em Arquivos

Publicado por Sandro Marcell em 14/05/2012

[ Hits: 9.175 ]

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

Copiando arquivos com caracteres especiais

Utilizando abas no Vim

Bash: Gráficos estatísticos de tráfego de rede

Habilitando correção ortográfica no Vim

Ordenando uma lista de IPs (IPv4) com o sort

Leitura recomendada

As melhores coisas a fazer depois de instalar o Ubuntu 14

Compactação de arquivos PDF com GhostScript

Teclas de atalho do GNOME - Parte I

Encontrando documentação de comandos no seu próprio Linux

Sysdig para Ops

  

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