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

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

Re: [shell-script] Progress bar


From: Fabricio Lopes de Souza
Subject: Re: [shell-script] Progress bar
Date: Tue, 20 Dec 2005 17:01:38 -0200

Obrigado , vou dar uma trabalhada em cima deles e posto aqui o resultado
so outra  duvida , nao tem como sobrescrever um caractere na tela ???
exemplo , no fim da tela tem um contador que vai crescendo ....

On 12/20/05, Reinaldo Marques de Lima <address@hidden> wrote:
>
> tenho tres exemplos que consegui não sei onde, espero que te ajude...
>
> #......................................................................................................................................#
>
> Gerando barra de Progresso
> ##########################
> #só com shell:
> t=0;echo -n " 0 ";while [ $t -lt 100 ];do t=$[t+1];\
> echo -ne "\e[${#t}D#$t";sleep 1;done
> #idem:
> t=0;echo -en "                                                  100\r 0 ";\
> while [ $t -lt 100 ];do t=$[t+1];[ $[ $t%2 ] -eq 0 ]&&\
> echo -ne "\e[${#t}D#$t";sleep 1;done;echo
> #+1:
> t=0;while [ $t -lt 100 ];do echo -ne "\r  0";x=0;while [ $x -lt 100 ];do \
> [ $[$x%2] -eq 0 ]&& { echo -ne "\e[7m";[ $x -gt $t ] &&echo -en "\e[0m";\
> echo -n " ";};x=$[x+1];done;echo -n 100%;sleep 1;t=$[t+1];done;echo
> #com dialog:
> t=0;while [ $t -lt 100 ];do t=$[t+1];echo $t;sleep .3;done\
> |dialog --gauge "Barra de Progresso com dialog" 10 72
>
> #.......................................................................................................................................#
>
> []'s
>
> echo 1818051527984510780893780664296243491354600493300713506724768535179018P
> | dc
>
>
>
>
> >From: Fabricio Lopes de Souza <address@hidden>
> >Reply-To: address@hidden
> >To: address@hidden
> >Subject: [shell-script] Progress bar
> >Date: Mon, 19 Dec 2005 11:53:42 -0200
> >
> >Estou tentando fazer uma barrinha que mostre +- o quanto foi executado
> >do processo e talz.
> >Algumas duvidas surgiram :
> >Eh possivel de alguma forma o script conseguir ler o conteudo de
> >COLLUMNS sem ter que exportar ?
> >A algum outro jeito de fazer essa barra ?
> >
> >ta ai o meu teste
> >Script meramente ilustrativo :)
> >[code]
> >#!/bin/bash
> >
> >[ $COLUMNS ] || {
> >    echo Você precisa exportar a variável \"COLUMNS\":
> >       echo "Tente \"export COLUMNS\" e tente executar novamente"
> >          exit 1
> >          }
> >
> >read -p "Qual o tamanho do arquivo ? [ em KB ] : " size
> >read -p "Qual o nome do arquivo? : " name
> >
> > > $name
> >echo -n "|="
> >verbose=$(expr $size / $COLUMNS )
> >flag_B=0
> >for i in $(seq 1 $size) ; do
> >    if [ $flag_B -eq 0 ] ; then
> >       flag_A=$i
> >       flag_B=1
> >    fi
> >temp=$(expr $flag_A + $verbose)
> >    if [ $i -eq $temp ] ; then
> >       echo -n "="
> >       flag_B=0
> >    fi
> >    cat a >> $name
> >
> >done
> >    echo -n "|"
> >    echo ""
> >echo "DONE!"
> >[/code]
> >
> >explicando
> >Primeiro se exporta COLUMNS para sabermos o tamanho do terminal
> >Depois pegamos o tamanho do arquivo que se quer , seguindo do
> >pressuposto que o arquivo "a" tem 1KB . Tamanho do Arquivo ($size) /
> >Colunas ($COLUMNS) = Intervalo ($verbose)  , ou seja a cada intervalo
> >devera aparecer um caracter .
> >
> >Espero que fui claro ...
> >
> >Abracos :)
>
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como 
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em 
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
>
> Links do Yahoo! Grupos
>
>
>
>
>
>
>
>


reply via email to

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