[DUVIDA][BASH] loop+arquivos [RESOLVIDO]

1. [DUVIDA][BASH] loop+arquivos [RESOLVIDO]

Pedersini
Pedersini

(usa Debian)

Enviado em 24/01/2019 - 16:42h

Então, eu tenho uma pasta onde tem diversos arquivos em .pdf, queria converter todos os arquivos da pasta para .jpg

Queria utilizar o comando
convert 
a sintaxe dele é facil,
convert arquivo1.pdf arquivo1.jpg 

Pode até existir algum argumento do comando dele que converta todos os arquivos para uma determinada extensão, mais eu queria aprender a fazer utilizando o "for" do bash mesmo..
Então por exemplo, na pasta /exemplo/pdf possuo os arquivos:

arquivo1.pdf
arquivodiferente.pdf
arquivo_exemplo.pdf


Então queria converter o arquivo com o mesmo nome de entrada para a saida, só mudando a extensão, por exemplo:

convert arquivo1.pdf arquivo1.jpg
convert arquivodiferente.pdf arquivodiferente.jpg
convert arquivo_exemplo.pdf arquivo_exemplo.jpg


Acho que para começar eu utilizaria o ls -1v e salvaria em um arquivo
ls -1v > lista_temp.txt 
depois
for lista_temp.txt ; do convert $lista_temp.txt $lista_temp.txt.jpg 


Possuo uma experiencia minima/quase nula com o bash, mais queria que alguém desse uma luz de como fazer esse script!


Obrigado desde já!


  


2. MELHOR RESPOSTA

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 24/01/2019 - 17:16h

v aí se te serve, não testei !!!

#!/bin/bash
OIFS="$IFS"
IFS=$'\n'
for file in `ls /exemplo/PDF/*.pdf`
do
convert $file $file.jpg
done
IFS="$OIFS"



------------------------------------------------------| Linux User #621728 |------------------------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------------------| Linux User #621728 |------------------------------------------------------



3. Re: [DUVIDA][BASH] loop+arquivos [RESOLVIDO]

Pedersini
Pedersini

(usa Debian)

Enviado em 24/01/2019 - 17:44h

Mauriciodez escreveu:

v aí se te serve, não testei !!!

#!/bin/bash
OIFS="$IFS"
IFS=$'\n'
for file in `ls /exemplo/PDF/*.pdf`
do
convert $file $file.jpg
done
IFS="$OIFS"



------------------------------------------------------| Linux User #621728 |------------------------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------------------| Linux User #621728 |------------------------------------------------------





Cara funcionou nos testes que eu fiz, obrigado!!!!

Me explica o que faz cada linha?


4. Re: [DUVIDA][BASH] loop+arquivos [RESOLVIDO]

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 24/01/2019 - 17:56h


Pedersini escreveu:

Cara funcionou nos testes que eu fiz, obrigado!!!!

Me explica o que faz cada linha?


estrutura do for => for variavel teste;do ação; else (opcional);done

OIFS e IFS é para o tratamento de nome com espaços ... explicação -> https://translate.google.com/translate?hl=pt-BR&sl=en&u=https://unix.stackexchange.com/quest...

o 'ls' lista os pdf's

convert é seu comando

Abçs

------------------------------------------------------| Linux User #621728 |------------------------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------------------| Linux User #621728 |------------------------------------------------------








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts