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

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

Re: [shell-script] Barra de progresso #######


From: Flavio Junior
Subject: Re: [shell-script] Barra de progresso #######
Date: Tue, 24 Oct 2006 17:39:58 -0300

Bom.. eu tava escrevendo aqui mas deu a hora de ir embora..

da uma olhadinha no que fiz, talvez te ajude:

root@bishamonten:~/scripts# TOTAL=10000
root@bishamonten:~/scripts# CUR=1
root@bishamonten:~/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 <address@hidden> 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" <address@hidden>
>Reply-To: address@hidden
>To: address@hidden
>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: address@hidden
---------------------------------------------------------------------
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






reply via email to

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