[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RES: [shell-script] PROGRESSBAR EM SHELL!!!!
From: |
Julio Cezar Neves - DATAPREVRJ |
Subject: |
RES: [shell-script] PROGRESSBAR EM SHELL!!!! |
Date: |
Thu, 3 Mar 2005 12:14:52 -0300 |
Fala Jorge,
vc disse que tentou fazer com a rotina que tem no meu livro. Que rotina é
essa? Abaixo vão dois codigos, o primeiro é um relógio para dar idéia de
continuídade e marca o percentual. a segund é somente para testar a
primeira. Estou te mandando os arquivos em pvt.
Prompt> cat spin.sh
#!/bin/sh
if [ $# -lt 3 ]
then
echo "
Uso: `basename $0` <PID do proc. em background> <No. da Lin.> <No. da
Col.> [Tempo previsto p/ execucao]
"
exit 1
fi
[ $4 ] && Tp=$4
Pon='\|/--\|/--'
Lin1=$2
Col1=$3
Lin2=`expr $Lin1 + 1`
Lin3=`expr $Lin1 + 2`
Lin4=`expr $Lin1 + 3`
Lin5=`expr $Lin1 + 4`
Lin6=`expr $Lin1 + 5`
Col2=`expr $Col1 + 1`
Col3=`expr $Col1 + 2`
Col4=`expr $Col1 + 3`
Col5=`expr $Col1 + 4`
i=0
Decorr=0
tput cup $Lin1 $Col1
echo '+-----+'
tput cup $Lin2 $Col1
echo '| |'
tput cup $Lin3 $Col1
echo '| + |'
tput cup $Lin4 $Col1
echo '| |'
tput cup $Lin5 $Col1
echo '+-----+'
tput cup $Lin6 $Col1
echo 'AGUARDE'
while kill -0 $1 2> /dev/null
do
i=`expr $i % 8 + 1`
case $i in
1) tput cup $Lin3 $Col2
echo " "
tput cup $Lin2 $Col3
echo `echo $Pon | cut -c1`
;;
2) tput cup $Lin2 $Col3
echo " "
tput cup $Lin2 $Col4
echo `echo $Pon | cut -c2`
;;
3) tput cup $Lin2 $Col4
echo " "
tput cup $Lin2 $Col5
echo `echo $Pon | cut -c3`
;;
4) tput cup $Lin2 $Col5
echo " "
tput cup $Lin3 $Col5
echo `echo $Pon | cut -c4,5`
;;
5) tput cup $Lin3 $Col5
echo " "
tput cup $Lin4 $Col5
echo `echo $Pon | cut -c6`
;;
6) tput cup $Lin4 $Col5
echo " "
tput cup $Lin4 $Col4
echo `echo $Pon | cut -c7`
;;
7) tput cup $Lin4 $Col4
echo " "
tput cup $Lin4 $Col3
echo `echo $Pon | cut -c8`
;;
8) tput cup $Lin4 $Col3
echo " "
tput cup $Lin3 $Col2
echo `echo $Pon | cut -c9,10`
;;
esac
sleep 1
if [ $Tp ]
then
Decorr=`expr $Decorr + 1`
Perc=`expr $Decorr \* 100 / $Tp`
[ $Perc -ge 100 ] && Perc=99
[ $Perc -lt 10 ] && Perc=0$Perc
tput cup $Lin6 $Col1
echo "+-$Perc%-+"
fi
done
for i in 1 2 3 4 5 6
do
eval tput cup \$Lin$i $Col1
echo " "
done
Prompt> cat tstspin.sh
clear
sleep 30 &
spin.sh $! 13 43 30
[ ]s,
Julio
:wq
| -----Mensagem original-----
| De: Jorge Pereira [mailto:address@hidden]
| Enviada em: quinta-feira, 3 de março de 2005 08:54
| Para: address@hidden
| Assunto: [shell-script] PROGRESSBAR EM SHELL!!!!
|
|
|
|
| E Ae galera,tudo bem?
| Gostaria de saber se tem como criar um script para monitorar
| a execução de outras
| rotinas e imprimir a porcentagem de execução dela.
| exemplo.
|
| ---
| script1.sh
| ---
| script2.sh
| ---
|
| e ter um exemplo tipo menu.sh que monitore os outros scripts tipo.
|
| ----------
| Menu de rotinas
|
|
| O Script $rotina_1 esta em execução com xx% (de 0% ate
| completar em 100%)
|
|
| OBS: Isso exibindo a porcentagem de varios scripts e
| processos ao mesmo tempo.
| OBS2: tentei fazer com a rotina que tem no livro do julio
| (livro edição 4) mais
| nao consegui,
| alguem poderia ajudar?????????
|
|
| --
| Jorge Pereira
| E-mail: address@hidden
| Sitio: http://www.jorgepereira.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
---------------------------------------------------------------------
Links do Yahoo! Grupos
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- RES: [shell-script] PROGRESSBAR EM SHELL!!!!,
Julio Cezar Neves - DATAPREVRJ <=