![Carlos Eduardo Carlos Eduardo](//static.vivaolinux.com.br/imagens/fotos/desconhecido.png)
cebaldocchi
(usa Ubuntu)
Enviado em 30/05/2015 - 10:57h
amigo, entendi a sua solução. Até conhecia o comando sed e gostei da forma que empregou.
Porém com o seu comando, ele vai gerar a lista de arquivos .png e .jpg colocando o nome dos arquivos que tenham espaço em branco um asterisco.
O problema é que o nome original do arquivo vai continuar com o espaço em branco, e quando o comando "convert" for rodar, vai apontar pra um arquivo vazio.
No momento eu achei um comando pra trocar o nome dos arquivos que substitui o espaço em branco por um underline. (A idéia é semelhante a sua, porém ele renomeia o arquivo). Ficou assim:
#!/bin/sh
echo "Digite a resolucao das fotos desejada: [1200x900] [1600x900] [2200x1650]:"
read resolucao
#REMOVE ESPACOS EM BRANCO DO NOME DO ARQUIVO:
ls -w1 *.* | while read line; do mv "$line" "$(echo $line | tr '\ ' '_')"; done
# CRIA O ARQUIVO ARCH.TXT
ls *.JPG *.jpg *.PNG *.png > arch.txt
mkdir mini
for i in `cat arch.txt`; do
convert $i -resize $resolucao mini/$i
done
rm arch.txt