Pular para o conteúdo

Tem como rodar

Responder tópico
  • Denunciar
  • Indicar

1. Tem como rodar

Enviado em 20/11/2018 - 01:17h

Sou novo por aqui, tanto no Linux como no forum, estou com uma dulvida a respeito de uma ideia que tive porém não sei se poder funcionar assim como estou pensando.

Quero entender como fazer para:

* que na função _Inicio() seja exibido o valor que esta sendo incrementado na função _Contrador()

* visto que pelo que entendi até agora, que a chamada _Contador &
faz com que a mesma esteja sendo exceultada em segundo plano.

Espero ter sido claro na explicação.
Como falei no inicio estou começando no linux agora, todas sugestões serão de grande valor para mim, desde já agradeço toda ajuda.


Segue o script

#!/bin/bash

_Inicio()
{
CONT=0
_Contador &
clear
echo
echo
echo
echo -e " Contador =\c"
tput civis
while true
do
echo -n " $CONT"
done
tput cnorm
echo
echo
echo
}
***************************************************************
_Contador()
{
### Enquanto <
while [ $CONT -lt 10 ]
do
let CONT++
sleep 1
done
}
***************************************************************
# Chamada inicial do script
_Inicio

Responder tópico

2. Re: Tem como rodar

Enviado em 22/11/2018 - 18:21h

Collphi escreveu:

Sou novo por aqui, tanto no Linux como no forum, estou com uma dulvida a respeito de uma ideia que tive porém não sei se poder funcionar assim como estou pensando.

Quero entender como fazer para:

* que na função _Inicio() seja exibido o valor que esta sendo incrementado na função _Contrador()

* visto que pelo que entendi até agora, que a chamada _Contador &
faz com que a mesma esteja sendo exceultada em segundo plano.

Espero ter sido claro na explicação.
Como falei no inicio estou começando no linux agora, todas sugestões serão de grande valor para mim, desde já agradeço toda ajuda.


Segue o script

#!/bin/bash

_Inicio()
{
CONT=0
_Contador &
clear
echo
echo
echo
echo -e " Contador =\c"
tput civis
while true
do
echo -n " $CONT"
done
tput cnorm
echo
echo
echo
}
***************************************************************
_Contador()
{
### Enquanto <
while [ $CONT -lt 10 ]
do
let CONT++
sleep 1
done
}
***************************************************************
# Chamada inicial do script
_Inicio
Boa tarde.
Com a lógica proposta, não "ROLA".
Pois, antes de entrar no laço da função inicio, que mostra o valor de CONT,
é chamada a função Contador, e o script entra no laço ate CONT<10, assim sendo,
nada é mostrado na tela....
Segue sugestão:
#!/bin/bash
CONT=0

Inicio() {
tput civis

while :;do
if (( $CONT < 10 ));then
echo -e " Contador = $CONT"
Contador;continue
else
break
fi
done
tput cnorm
}

Contador() {
let CONT++
sleep 1
}
Inicio

Note que NÃO é necessário utilizar DUAS FUNÇÕES, para realizar tal tarefa....

Att.:
Marcelo Oliver

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder