comando aguardar a execução do anterior

1. comando aguardar a execução do anterior

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 15/06/2017 - 13:29h

pessoas .. tenho o comando "dhclient wlan0" e depois vem um "apt-get update" ... pois bem preciso que o update só seja executado depois que a conexão for estabelecida ... o "&&! não adianta pq o "update" rola depois do dhcliente e não depois da conexão estabelecida ... como não sei quanto tempo vai rolar para se estabelecer a conexão, qual comando uso para fazer o update aguardar ???


  


2. Re: comando aguardar a execução do anterior

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 15/06/2017 - 22:05h

Mauriciodez escreveu:

pessoas .. tenho o comando "dhclient wlan0" e depois vem um "apt-get update" ... pois bem preciso que o update só seja executado depois que a conexão for estabelecida ... o "&&! não adianta pq o "update" rola depois do dhcliente e não depois da conexão estabelecida ... como não sei quanto tempo vai rolar para se estabelecer a conexão, qual comando uso para fazer o update aguardar ???


Mauricio, se fizer:
dhclient wlan0
sleep 5 # maior ou menor . . . . ajuste de acordo . . .
apt-get update

Testa ai se resolve . . .

Uma outra alternativa, é testar a conexão com o ping,
se for bem sucedida, executa o apt-get update, senão aguarda....
Obviamente, esse teste dentro de um laço....

att.:
marcelo oliver



3. Re: comando aguardar a execução do anterior

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 16/06/2017 - 02:29h

msoliver escreveu:

Mauriciodez escreveu:

pessoas .. tenho o comando "dhclient wlan0" e depois vem um "apt-get update" ... pois bem preciso que o update só seja executado depois que a conexão for estabelecida ... o "&&! não adianta pq o "update" rola depois do dhcliente e não depois da conexão estabelecida ... como não sei quanto tempo vai rolar para se estabelecer a conexão, qual comando uso para fazer o update aguardar ???


Mauricio, se fizer:
dhclient wlan0
sleep 5 # maior ou menor . . . . ajuste de acordo . . .
apt-get update

Testa ai se resolve . . .

Uma outra alternativa, é testar a conexão com o ping,
se for bem sucedida, executa o apt-get update, senão aguarda....
Obviamente, esse teste dentro de um laço....

att.:
marcelo oliver


então velho ... o sleep é uma opção, só q o tempo de conexão varia entre alguns poucos segundos e uns muitos segundos ... um sleep 30 ou sleep 45 resolve, só que queria uma parada mais cirúrgica !!
O ping pensei tb, só não descobri como fazer o bagulho identificar o primeiro pacote recebido ou o 1º não erro !!!



------------------------------------------| Linux user # 621728 |----------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------| Linux user # 621728 |----------------------------------------



4. Re: comando aguardar a execução do anterior

Gabriel Henrique da Silva Ferreira
MrBlackWolf

(usa Arch Linux)

Enviado em 16/06/2017 - 09:57h

Cara, você precisa saber se o comando dhclient retorna algum código de sucesso ou erro.


5. Re: comando aguardar a execução do anterior

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 16/06/2017 - 11:50h

Mauriciodez escreveu:

msoliver escreveu:

Mauriciodez escreveu:

pessoas .. tenho o comando "dhclient wlan0" e depois vem um "apt-get update" ... pois bem preciso que o update só seja executado depois que a conexão for estabelecida ... o "&&! não adianta pq o "update" rola depois do dhcliente e não depois da conexão estabelecida ... como não sei quanto tempo vai rolar para se estabelecer a conexão, qual comando uso para fazer o update aguardar ???


Mauricio, se fizer:
dhclient wlan0
sleep 5 # maior ou menor . . . . ajuste de acordo . . .
apt-get update

Testa ai se resolve . . .

Uma outra alternativa, é testar a conexão com o ping,
se for bem sucedida, executa o apt-get update, senão aguarda....
Obviamente, esse teste dentro de um laço....

att.:
marcelo oliver


então velho ... o sleep é uma opção, só q o tempo de conexão varia entre alguns poucos segundos e uns muitos segundos ... um sleep 30 ou sleep 45 resolve, só que queria uma parada mais cirúrgica !!
O ping pensei tb, só não descobri como fazer o bagulho identificar o primeiro pacote recebido ou o 1º não erro !!!



------------------------------------------| Linux user # 621728 |----------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------| Linux user # 621728 |----------------------------------------


Mauricio, seguem sugestões:
sudo ifconfig wlan0|if egrep -q 'Bcast:([0-9]{1,3}\.){3}[0-9]{1,3}';then echo "CONECTADO";else echo "NÃO CONECTADO"; fi 

ou
if sudo ping -c1 192.168.1.1 > /dev/null;then echo "CONECTADO";else echo "DESCONECTADO";fi 

PS.: Usei o ip do GW/Router, pode ser usado um externo . . . .

att.:
marcelo oliver



6. Re: comando aguardar a execução do anterior

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 16/06/2017 - 12:37h

MrBlackWolf escreveu:

Cara, você precisa saber se o comando dhclient retorna algum código de sucesso ou erro.


tem alguma idéia de como eu descubro isso ??? lembrando que o Debian está em modo texto e não tem nada instalado






------------------------------------------| Linux user # 621728 |----------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------| Linux user # 621728 |----------------------------------------



7. Re: comando aguardar a execução do anterior

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 16/06/2017 - 12:39h

msoliver escreveu:

Mauricio, seguem sugestões:
sudo ifconfig wlan0|if egrep -q 'Bcast:([0-9]{1,3}\.){3}[0-9]{1,3}';then echo "CONECTADO";else echo "NÃO CONECTADO"; fi 

ou
if sudo ping -c1 192.168.1.1 > /dev/null;then echo "CONECTADO";else echo "DESCONECTADO";fi 

PS.: Usei o ip do GW/Router, pode ser usado um externo . . . .

att.:
marcelo oliver


Marcelo ... hoje não sei se consigo testar essa sua solução ... assim que testar te informo !!! antes gostaria de resolver aquela parada da execução do script no tty.

https://www.vivaolinux.com.br/topico/Shell-Script/Script-executar-outro-script-em-outro-terminal






------------------------------------------| Linux user # 621728 |----------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------| Linux user # 621728 |----------------------------------------



8. Re: comando aguardar a execução do anterior

Gabriel Henrique da Silva Ferreira
MrBlackWolf

(usa Arch Linux)

Enviado em 16/06/2017 - 12:43h

Mauriciodez escreveu:

MrBlackWolf escreveu:

Cara, você precisa saber se o comando dhclient retorna algum código de sucesso ou erro.


tem alguma idéia de como eu descubro isso ??? lembrando que o Debian está em modo texto e não tem nada instalado






------------------------------------------| Linux user # 621728 |----------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------| Linux user # 621728 |----------------------------------------


Assim que der um tempo vou dar uma pesquisadinha aqui.


9. Re: comando aguardar a execução do anterior

Joabe G.Q. Kachorroski
KernelKill

(usa Debian)

Enviado em 16/06/2017 - 14:11h

Boa tarde;

Mano ja tentou criar um IF para verificar? algo tipo isso:

CONECT = dhclient wlan0
if [$CONECT -eq "retorno"]
then
echo 'Conectado'
else
echo 'Não conectado'
fi


Mas pra isso vc tem que verificar se o dhclient wlan0 tem algum retorno, com certeza ele vai ter, eu nao pude verificar isso pois estou no trampo e o negocio ta corrido aqui, mas tenta isso ai.


10. Re: comando aguardar a execução do anterior

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 16/06/2017 - 14:17h

KernelKill escreveu:

Mas pra isso vc tem que verificar se o dhclient wlan0 tem algum retorno, com certeza ele vai ter, eu nao pude verificar isso pois estou no trampo e o negocio ta corrido aqui, mas tenta isso ai.


então jovem ... o dhclient se tem algum retorno ele é oculto ... para o usuário ele só devolve o "terminal"





------------------------------------------| Linux user # 621728 |----------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------| Linux user # 621728 |----------------------------------------







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts