Adicionando Extensões em Arquivos

Publicado por Sandro Marcell em 14/05/2012

[ Hits: 6.030 ]

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

Declarando constantes em shell scripts

FreeBSD: "chroot" num pool de armazenamento em ZFS

Zsh: Menu de autocompletar para o comando kill

Wget: Verificando existência de arquivo remoto

Leitura recomendada

Como anexar arquivos em email pelo modo texto

Sinais de processos

Backups simples e seguros com o ssh e dd no Linux

Inserindo legenda em vídeo na linha de comando com o FFmpeg

Lidando com processos

  

Comentários
[1] Comentário enviado por undr3ad 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
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts