LINUX.ORG.RU

Мониторинг включенности удаленного компа


0

0

Нужно чтобы мой комп пищал когда удаленный комп отрублен (часто бывает).

Команда ping ведь по идее возвращает (как и всякое приложение) 0 в случае успехи и другие цифры в противном случае.

Вопрос как заставить ping передать индекс завершения в скрипт?

while true

do

if [ <что_сюда_писать?> ="1"] then

beep

fi

sleep 10

done

s/успехи/успеха

gkrellm
() автор топика

man ping

              -c count
              Stop  after  sending  count  ECHO_REQUEST  packets.  With  deadline option, ping waits for count
              ECHO_REPLY packets, until the timeout expires.


       If ping does not receive any reply packets at all it will exit with code 1. If a packet count and dead‐
       line are both specified, and fewer than count packets  are  received  by  the  time  the  deadline  has
       arrived,  it  will also exit with code 1.  On other error it exits with code 2. Otherwise it exits with
       code 0. This makes it possible to use the exit code to see if a host is alive or not.



[scholz@bunker] ~$ ping localhost -c 1 -q || echo $?
PING localhost (127.0.0.1) 56(84) bytes of data.

--- localhost ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.047/0.047/0.047/0.000 ms
0


[scholz@bunker] ~$ ping foo.bar -c 1 -q || echo $?
ping: unknown host foo.bar
2

scholz
()
Ответ на: комментарий от scholz

Ок спасибо всем.

Напишу как заработало у меня.

#! /bin/bash

if [ "$(ping -q -c 1 host >/dev/null || echo $?)" = "1" ];

then

echo -en "\007"

fi

sleep 3

gkrellm
() автор топика
Ответ на: комментарий от scholz

Увы для меня нагромождения '' [] "" `` и разница между ними пока темный лес.

Однако

ping -q -c 1 host 2>&1 >/dev/null

у меня не выдает ничего ни в каком случае. Странно.

gkrellm
() автор топика
Ответ на: комментарий от gkrellm

> у меня не выдает ничего ни в каком случае.
так и должно быть, 2>&1 >/dev/null удаляет весь вывод

val-amart ★★★★★
()
Ответ на: комментарий от gkrellm

наоборот реализовано в BSD-шном пинге, который собрать - особого труда не составляет. там -a - пищит если пинг есть, а -A пищит если пинг пропал.

Komintern ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.