Scrit para redimensionamento em massa de fotos [RESOLVIDO]

1. Scrit para redimensionamento em massa de fotos [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 20/12/2013 - 19:52h

Olá galera,

Gostaria de alguma sugestão de como melhorar esse script simples aqui:

----------------------------------------------
#!/bin/bash

for i in *.{jpg,png}; do
echo "Convertendo a imagem $i ..."
convert -resize 800x600 $i resized_$i
done
----------------------------------------------

Quero redimensionar uma grande quantidades de fotos em vários diretórios/subdiretórios e este pequeno script não funciona recursivamente, como fazer isso? Outro problema é com arquivos que contêm espaços no nome, não redimensionam, como contornar este problema sem ter que renomear os arquivos?


  


2. Re: Scrit para redimensionamento em massa de fotos [RESOLVIDO]

Fernando
phoemur

(usa Debian)

Enviado em 20/12/2013 - 21:55h

Um comando só basta:


find /home/diretorio -iname "*.jpg" -print0 -o -iname "*.png" -print0 -o -iname "*.gif" -print0 | xargs -0 -n1 -P0 -i -t convert -resize 800x600 {} {}.new


Assim vai procurar recursivamente à partir de /home/diretorio os arquivos com extensão jpg png ou gif (maiuscula ou minuscula) e vai redimencionar para 800x600 com os novos arquivos com extensão .new, e não terá problema se tiver espaço no nome do arquivo


3. Re: Scrit para redimensionamento em massa de fotos [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 20/12/2013 - 22:31h

Valeu brother!!!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts