Pular para o conteúdo

Converter vários arquivos

Olá pessoal! Hoje precisei converter alguns arquivos .eps para .png, mas como eram muitos criei um script para esse problema. Testem o script, modifiquem-o e sugiram melhorias, ou mesmo, outro script. Requer o pacote ImageMagick (comando convert).
Iago Lira iagolira
Hits: 6.233 Categoria: Shell Script Subcategoria: Expressões Regulares
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Olá pessoal! Hoje precisei converter alguns arquivos .eps para .png, mas como eram muitos criei um script para esse problema. Testem o script, modifiquem-o e sugiram melhorias, ou mesmo, outro script. Requer o pacote ImageMagick (comando convert).
Download 6179.convert.sh Enviar nova versão

Esconder código-fonte

#!/bin/bash
#+---------------------------------+
#|Programa: Convert 1.0.1          |
#|Autor: Francisco Iago Lira Passos|
#+---------------------------------+

export num
export nova
export extencao
export arquivo

#Definições:
arquivo=lista.txt

#-----------------------------------------------------------
echo -n "Digite a extensão que você quer converter (ex: pdf, eps, png e etc): " && read extencao
echo -n "Digite a nova extensão:" && read nova
#-----------------------------------------------------------

num=$(ls -l | awk '{print $9}' | wc -l) #Numero de linhas
if [ -e $arquivo ]; then rm $arquivo; fi
ls -l | awk '{print $9}' | sed '/^$/d' >> $arquivo
clear && history -c

#Lendo arquivos
i=0
while read arq
do
i=$((i+1))
  file[$i]="$arq"
  est="${file[$i]}"
  name=$(echo ${file[$i]} | rev)
  nome[$i]=$(echo ${name##*.} | rev)
  es[$i]=$(echo ${est##*.})
done < $arquivo

[[ -d copia ]] || mkdir copia #Criando diretorio

#Convertendo arquivos
for (( j=1 ; j<=$num ; j++ ))
do
  if [ "${es[$j]}" == "$extencao" ]
  then
  echo "Convertendo " ${file[$j]} " para " $(echo ${nome[$j]}"."$nova)
  convert ${file[$j]} $(echo ${nome[$j]}"."$nova)
  [[ "${es[$j]}" == "png" ]] || ebb $(echo ${nome[$j]}"."$nova)
  [[ "${es[$j]}" == "jpeg" ]] || ebb $(echo ${nome[$j]}"."$nova)
  echo "Movendo " ${file[$j]} " para copia/"
  mv ${file[$j]} copia/
  fi
done

Gerenciador de autenticação de usuarios no squid

Lembrete

Gerar TinyURL (URL curta) para postar no Twitter

Script ligar-scrolllock

Solus_Linux_Otimizacao_Limpeza_e_Tutorial_20_comandos do_Terminal_Linux

#1 Comentário enviado por vitorgatti em 16/08/2015 - 15:55h

extenSão

desculpa
#2 Comentário enviado por iagolira em 16/08/2015 - 23:42h

[1] Comentário enviado por vitorgatti em 16/08/2015 - 15:55h


extenSão

desculpa


As vezes passam despercebidos estes erros!! hehehe

Contribuir com comentário

Entre na sua conta para comentar.