Bom.. eu tava escrevendo aqui mas deu a hora de ir embora..
da uma olhadinha no que fiz, talvez te ajude:
[EMAIL PROTECTED]:~/scripts# TOTAL=10000
[EMAIL PROTECTED]:~/scripts# CUR=1
[EMAIL PROTECTED]:~/scripts# echo -n "["; while [ $CUR -le $TOTAL ]; do
let TMP=$CUR/\($TOTAL/100\); if [ $((TMP % 10)) == 0 ]; then echo -n
"##"; fi; let CUR=$CUR+100; done; echo -n "]"
[####################]
Sorte,
Flávio do Carmo Junior
On 10/24/06, Reinaldo Marques de Lima <[EMAIL PROTECTED]> wrote:
> eu tenho um script que criai para testes com tput, vc pode adapta-lo para
> seu proposito, ai vai:
>
> +-----------------------------------------------------------------------------------------------------------------------------+
>
> #!/bin/bash
>
> #....[ Ficha: ]...........................................................#
> # #
> # Script: progress.bsh #
> # Escrito por: Reinaldo Marques de Lima ( Plastico ) #
> # Criado em: 10/07/2006 #
> # #
> #....[ Descricao: ].......................................................#
> # #
> # Script criado para testes com tput, gera uma barra de progresso na linha#
> # de comando. #
> # #
> #.........................................................................#
>
> SPACE=" "
>
> #( Array de caracteres a serem mostrados )................................#
>
> array[1]=$(echo "\\")
> array[2]=$(echo "|")
> array[3]=$(echo "/")
> array[4]=$(echo "-")
>
> #( Variaveis que controlam o tamanho do terminal )........................#
>
> LIMITE=$(tput cols)
> COLUNA=$((LIMITE - 15))
>
> #( Indices do while ).....................................................#
>
> INDICE=0
> CONTADOR=0
>
> clear
>
> #( Looping que vai gerar a barra )........................................#
>
> while [ $CONTADOR != 100 ]; do
>
> let INDICE++
> tput cup 0 0
> echo "["
> for i in `seq $CONTADOR`; do
>
> # SPACE=${SPACE}' '
> SPACE=${SPACE/% / }
>
> done
> tput cup 0 1
> echo -e "\e[44;1m$SPACE\e[m\n${#SPACE}"
> tput cup 0 $COLUNA
> echo "] ${array[$INDICE]} - Progresso"
> sleep 1
> CONTADOR=$((CONTADOR+1))
> if [ $INDICE = 4 ]; then
> INDICE=0
> fi
> [ ${#SPACE} -gt $COLUNA ] && exit
>
> done
>
> clear
>
> #( Fim! Esse nao ta tao facil assim neh? )................................#
>
>
> +-----------------------------------------------------------------------------------------------------------------------------+
>
> []'s
>
> Reinaldo / Plastico
> <!--
> BLOG:
> http://plasticossj4.wordpress.com/
>
> -->
>
>
>
>
> >From: "Rafael Leandro" <[EMAIL PROTECTED]>
> >Reply-To: [email protected]
> >To: [email protected]
> >Subject: [shell-script] Barra de progresso #######
> >Date: Tue, 24 Oct 2006 13:47:42 -0300
> >
> >Gostaria de saber como fazer uma barra de progresso em shell. tipo
> >(#############).
> >Eu tenho um scriptzinho que faz um backup de uma partião a outra. Como
> >implementar essa barra no momento em que os arquivos estiverem sendo
> >copiados?
> >
> >--
> >============
> >
> >Atenciosamente
> >
> >Rafael Leandro
> >Linux User #431877
> >
> >
> >[As partes desta mensagem que não continham texto foram removidas]
> >
>
> _________________________________________________________________
> MSN Busca: fácil, rápido, direto ao ponto. http://search.msn.com.br
>
>
>
> ---------------------------------------------------------------------
> 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: [EMAIL PROTECTED]
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
> Links do Yahoo! Grupos
>
>
>
>
---------------------------------------------------------------------
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: [EMAIL PROTECTED]
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil
Links do Yahoo! Grupos
<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/shell-script/
<*> Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html