[bash] ignorowanie ping unknown host

Odpowiedz Nowy wątek
2009-01-25 13:24
Moderator

Rejestracja: 13 lat temu

Ostatnio: 1 minuta temu

Lokalizacja: Stacktrace

0

mamy skrypcik, który ma za zadanie pingować hosty z listy. Główna część programu wygląda tak:

function testHost
{
  result=`ping -c 1 $1 | grep "([rR]equest\\ timeout)"`;
  if [ ! `echo $result` == ""  ]
  then
    sendAlert $1 $result
  fi
}

Problem pojawia się w momencie gdy ping zgłasza błąd (zła nazwa hosta, request timeout itp.). odpowiedź z ping nie jest przekazywana do grepa i dalej do sendAlert. Pytanie brzmi jak pobrać wynik działania programu ping niezależnie od tego co się stanie? Chodzi o obsłużenie błędu zgłaszanego przez ping.

edit:

chodzi o to by informacja z ping znalazła się w pliku. Coś takiego nie działa:

# ping dasdsas.lp > msg
ping: unknown host dasdsas.lp
# cat msg 
#

msg jest puste


Sięgam tam, gdzie wzrok nie sięga… a tam NullPointerException

Pozostało 580 znaków

2009-01-25 13:33

Rejestracja: 16 lat temu

Ostatnio: 9 lat temu

0

$?


JKM czy HGW?

Pozostało 580 znaków

2009-01-25 13:35
Moderator

Rejestracja: 13 lat temu

Ostatnio: 1 minuta temu

Lokalizacja: Stacktrace

0

@Qyon, popatrz na edita. Tam jest to chyba lepiej wytłumaczone


Sięgam tam, gdzie wzrok nie sięga… a tam NullPointerException

Pozostało 580 znaków

2009-01-25 13:37

Rejestracja: 16 lat temu

Ostatnio: 9 lat temu

0

ping dasdsas.lp > msg 2>&1

Przegierowujesz stderr na stdout


JKM czy HGW?

Pozostało 580 znaków

2009-01-25 13:40
Moderator

Rejestracja: 13 lat temu

Ostatnio: 1 minuta temu

Lokalizacja: Stacktrace

0

Ok. O to chodziło


Sięgam tam, gdzie wzrok nie sięga… a tam NullPointerException

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0