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

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

Progress bar


From: Fabricio Lopes de Souza
Subject: 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 :)


reply via email to

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