shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] libreoffice odp para jpg (solução)


From: Julio C. Neves
Subject: Re: [shell-script] libreoffice odp para jpg (solução)
Date: Mon, 20 Feb 2012 13:19:55 -0200

Jorge, não sei se entendi legal, mas pelo que entendi, seu script só
funcionaria se a apresentação tivesse entre 10 e 99 slides.
Veja só como eu faria:

convert "$1" $Nome.jpg

# cut isola os números e wc -L pega o maior tamanho
Mai=$(ls *-[0-9]*.jpg | cut -f2 -d- | cut -f1 -d. | wc -L)

for Arq in $(ls *-[0-9]*.jpg)
{
    IFS='-.' read Nom Num Ext <<< "$Arq"
    mv $Arq $Nom-$(printf "%0$Mai"d $Num).jpg
}

Dentro do for eu mudei o IFS temporariamente (repare que não tem ponto e
vírgula entre a atribuição e o cmd read. Por isso esse IFS só vale para o
read) para não necessitar de um monte de cut. O último parâmetro ($Ext) é
desnecessário pois todos serão, obrigatoriamente jpg.
No mv usei o printf para colocar zeros à esquerda. Supondo que $Mai fosse
3, e $Num fosse 7, o printf formado seria:
printf "%03"d 5
que produziria 005.

Abcs,
Julio
*Já foi lançado "Bombando o
Shell<http://www.brasport.com.br/index.php?dispatch=products.view&product_id=666>
". *
*Show **de interfaces gráficas sob Shell!*
*
*



Em 20 de fevereiro de 2012 10:56, Jorge Barros de Abreu <
address@hidden> escreveu:

> **
>
>
> Olá.
>
> Durante muito tempo e por questões de compatibilidade tentei exportar
> apresentações odp para o
> formato jpg. Nativamente o libreoffice/broffice/openoffice faz uma
> conversão de slide por vez.
>
> Para fazer a conversão da apresentação toda de uma tacada só você deve
> primeiramente exportar para
> pdf e a seguir usar o comando convert
>
> convert apresentacao.pdf apresentacao.jpg
>
> Será gerado um jpg para cada slide.
>
> a numeração dos arquivos gerados precisa ser ajustada caso contrário será
> mostrada na sequência
> incorreta. O 10 será mostrado ao lado do 100 por exemplo. a numeração do
> slide 10 deve ser mudada
> para 010.
>
> Criei um script(tstado no slackware) para fazer a mudança nos nomes de uma
> só vez:
>
> #!/bin/bash
> #nome da apresentacao a ser convertida com a extensão PDF/pdf explicitada
> NOME=`echo $1 | cut -d '.' -f 1` #parte do nome antes do ponto
> EXTENSAO=`echo $1 | cut -d '.' -f 2` #extensao do nome
> if [[ "$EXTENSAO" != "PDF" ]] && [[ "$EXTENSAO" != "pdf" ]]
> then
> echo -e "\nA extensao tem que ser ou pdf ou PDF"
> exit
> fi
> unset EXTENSAO
> convert $1 $NOME.jpg
> MEIO="0"
> for (( i=0 ; i<10 ; i++ ))
> do
> mv $NOME"-"$i".jpg" $NOME"-"$MEIO$i".jpg"
> done
> unset NOME MEIO
>
> Até.
>
> --
> Data Estelar 2455976,000764
> http://sites.google.com/site/ficmatinf
> Desejo-lhe Paz, Vida Longa e Prosperidade.
> São Bem Vindas Mensagens no Formato texto UTF-8 com Acentos.
>  
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]