Erro em Shell Script

1. Erro em Shell Script

José teixeira
richter696

(usa Slackware)

Enviado em 06/05/2016 - 15:31h

Amigos, vejam se podem me ajudar estou fazendo um script que verificaria algumas condições afim de efetuar outros scripts.
Quem puder me ajudar serei muito grato.

#!/bin/bash
log=/var/log/internet.txt # Define arquivo para log

site="200.160.2.10" # Define IP para Teste de conectividade externa

site2="8.8.8.8" # Define outro IP para Teste de conectividade externa

gate="200.155.155.152" # Valor da WAN do Roteador


ip=$(LANG=C; ifconfig eth1|grep "inet addr"|cut -f2 -d:|cut -f1 -d" ") # Captura informação sobre o IP da Eth1

if [ $ip="192.168.0.10" ]; then # Verifica se o link principal está definido na interface de rede.

rede="principal"

fi

if [ $ip="10.0.0.2" ]; then # Verifica se o link alternativo está definido na interface de rede.

rede="alternativo"

fi

echo "Testando internet da sua rede"; # Verifica se a rede principal está falhando na comunicacao dos dois IPs de teste

if [ $rede="alternativo" ] && ping -c 7 $gate >/dev/null; then # Verifica se o link eh o Alternativo, e se a Wan do Link principal está funcionando caso esteja..assume o Link Principal.

echo "Iniciando internet principal" # Vai iniciar o link principal novamente dando prioridade sobre o link alternativo.

echo "Link Dedicado - Troca de Link: `date +%d-%m-%y_%H:%M:%S`" >> $log # Grava informação no log sobre a queda
./link_dedicado.sh
else
echo "Link" $ip "funcionando"; # Caso contrario, exibe qual link está ativo.
fi


if [ $rede="principal" ] && ! ping -c 7 $site > /dev/null && ! ping -c 7 $site2 > /dev/null; then # Se existe falha executa o script de troca de link para GVT
echo "Iniciando internet redundante"

echo "Link principal - Hora da Queda: `date +%d-%m-%y_%H:%M:%S`" >> $log # Grava informação no log sobre a queda

./link_gvt.sh
else
echo "Link" $ip "funcionando"; # Caso contrario, exibe qual link está ativo.
fi

if [ $rede="alternativo" ] && ! ping -c 7 $site > dev/null && ! ping -c 7 $site2 > /dev/null; then # Verifica se a rede Alternativo está falhando na comunicacao dos dois IPs de teste

echo "Iniciando internet principal" # Se existe falha executa na sequencia o script de troca de link para Oi.

echo "Link Alternatico - Hora da Queda: `date +%d-%m-%y_%H:%M:%S`" >> $log # Grava informação no log sobre a queda
./link_dedicado.sh
else
echo "Link" $ip "funcionando"; # Caso contrario, exibe qual link está ativo.
fi

sleep 120; # Aguarda 120 segundos
./$0 # Verifica novamente


  


2. Re: Erro em Shell Script

Ronaldo Ferreira de Lima
textmode

(usa Slackware)

Enviado em 06/05/2016 - 16:21h

Qual é a dúvida?


3. Re: Erro em Shell Script

thinomar
thinomar

(usa Linux Mint)

Enviado em 06/05/2016 - 16:52h

Qual é o erro?
--
-I've been talking to the main computer
-And...?
-It hates me


4. Re: Erro em Shell Script

José teixeira
richter696

(usa Slackware)

Enviado em 07/05/2016 - 11:47h

As condições da Shell não são respeitadas....


5. Re: Erro em Shell Script

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 07/05/2016 - 12:00h

richter696 escreveu:

As condições da Shell não são respeitadas....



Com toda certeza não mesmo !.






=====================================================================
Não existe saber mais ou saber menos, existem saberes diferentes.
ID = LPI000359879
=====================================================================





6. Re: Erro em Shell Script

José teixeira
richter696

(usa Slackware)

Enviado em 10/05/2016 - 08:50h

ctw6av escreveu:

richter696 escreveu:

As condições da Shell não são respeitadas....


Com toda certeza não mesmo !.



Teria como explicar ??




7. Re: Erro em Shell Script

Jeffersson Abreu
ctw6av

(usa Nenhuma)

Enviado em 15/05/2016 - 00:53h

Claro que sim... está logo abaixo o errinho.

Linha 13:
if [$IP = "192.168.0.10"]; em seguida, # Verifica se o elo principais ESTÁ Definido na interface de de Rede.
^-SC2086: Aspas duplas para evitar englobamento e divisão palavra.
^-SC2077: Você precisa de espaços em torno do operador de comparação.

Linha 19:
if [$ip = "10.0.0.2"]; em seguida, # Verifica se o elo alternativo ESTÁ Definido na interface de de Rede.
^-SC2086: Aspas duplas para evitar englobamento e divisão palavra.
^-SC2077: Você precisa de espaços em torno do operador de comparação.

Linha 27:
if [$ Rede = "alternativo"] && ping -c 7 $ gate> / dev / null; em seguida, # Verifica se o elo eh o Alternativo, e se uma Wan fazer ligação principais ESTÁ FUNCIONANDO Caso esteja..assume o link principal.
^-SC2077: Você precisa de espaços em torno do operador de comparação.

Linha 31:
echo "Fazer a ligação Dedicado - Troca de Link:` date +% d-% m-% Y_% H:% M:% S` ">> $ log # Grava Informação não log Sobre a Queda
^-SC2006: Use $ (..) em vez de legado `..`.

Linha 34:
echo "Link" $ip "FUNCIONANDO"; # Caso contrario, exibe qua Ativo ligação ESTA.
^-SC2086: Aspas duplas para evitar englobamento e divisão palavra.

Linha 38:
if [$Rede = "principal"] &&! ping -c 7 $site> / dev / null &&! ping -c 7 $site2> / dev / null; em seguida, # Se Existe falha executa o roteiro de Troca de Link para GVT
^-SC2077: Você precisa de espaços em torno do operador de comparação.

Linha 41:
echo "Ligação Principal - Hora da Queda:` date +% d-% m-% Y_% H:% M:% S` ">> $ log # Grava Informação não log Sobre a Queda
^-SC2006: Use $ (..) em vez de legado `..`.

Linha 45:
echo "Link" $ip "FUNCIONANDO"; # Caso contrario, exibe qua Ativo ligação ESTA.
^-SC2086: Aspas duplas para evitar englobamento e divisão palavra.

Linha 48:
if [$Rede = "alternativo"] &&! ping -c 7 $site> dev / null &&! ping -c 7 $site2> / dev / null; em seguida, # Verifica se uma Rede Alternativo ESTÁ falhando na COMUNICACAO dos Dois IPs de teste
^-SC2077: Você precisa de espaços em torno do operador de comparação.

Linha 52:
echo "Fazer a ligação Alternatico - Hora da Queda:` date +% d-% m-% Y_% H:% M:% S` ">> $ log # Grava Informação não Sobre log A Queda
^-SC2006: Use $ (..) em vez de legado `..`.

Linha 55:
echo "Link" $ip "FUNCIONANDO"; # Caso contrario, exibe qua Ativo ligação ESTA.
^-SC2086: Aspas duplas para evitar englobamento e divisão palavra.

Linha 59:
./$0 # Verifica Novamente
^-SC2086: Aspas duplas para evitar englobamento e divisão palavra.


Só isso por enquanto !.



=====================================================================
Não existe saber mais ou saber menos, existem saberes diferentes.
ID = LPI000359879
=====================================================================









Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts