Tentando testar se o proxy está funcionando

1

Eu escrevi este script simples:

export http_proxy='http://proxy.test.cz:1234/'
wget -nvq --proxy-user=test --proxy-password=test google.com &>/dev/null | grep -q 'You cant user internet' || echo "Proxy isnt working. " | mail -s "Proxy isnt working" -r "No-reply<[email protected]>" [email protected]

Medidas tomadas:

  1. Exporte o endereço do nosso proxy.
  2. Fazer o download de www.google.com com wget .
  3. Verifique o resultado do proxy para "Você não pode usar a internet"
  4. Se encontrado, deve terminar, mas quando não for encontrado, deverá enviar um email para o meu endereço.

O problema é que ele envia e-mail mesmo que encontre 'Você não pode usar a internet'.

    
por Radek Pulkrabek 10.02.2017 / 08:09

1 resposta

1

use () no seu bloco de eco

wget -nvq --proxy-user=test --proxy-password=test google.com &>/dev/null | grep -q 'You cant user internet' || (echo "Proxy isnt working. " | mail -s "Proxy isnt working" -r "No-reply<[email protected]>" [email protected])

experimente este script .. no seu onliner, você está executando o wget em segundo plano e tentando fazer o grep do conteúdo ...

#!/bin/bash
OUTPUT_FILE=/tmp/$$.txt
wget -nvq --proxy-user=test --proxy-password=test google.com > ${OUTPUT_FILE} 2>&1

grep -q 'You cant user internet' ${OUTPUT_FILE}
if [ "$?" -eq "0" ]
then
    echo "Proxy isnt working. " | mail -s "Proxy isnt working" -r "No-reply<[email protected]>" [email protected]
else
    echo "Proxy is working"
fi
    
por 10.02.2017 / 08:11