Odpowiedzi:
Od man ping
:
-w deadline
Specify a timeout, in seconds, before ping exits regardless of how many packets have been sent or received. In this case ping does not stop after count packet are sent, it waits either for deadline expire or until count probes are answered or for some error
notification from network.
-W timeout
Time to wait for a response, in seconds. The option affects only timeout in absense of any responses, otherwise ping waits for two RTTs.
Oznacza to, że -w
ustawia limit czasu dla całej sesji programu . Jeśli ustawisz -w 30
, ping
(program) zakończy działanie po 30 sekundach.
-W
z drugiej strony ustawia limit czasu dla pojedynczego pingowania . Jeśli ustawisz -W 1
, ta konkretna próba ping przekroczy limit czasu.
Jeśli chodzi o sposób ustawiania indywidualnego limitu czasu ping na 200 ms, nie sądzę, że można to zrobić za pomocą iputils
„wersji” ping
. Możesz spróbować bezpośrednio zaprogramować bibliotekę ICMP.
-w
flagi, ale ma opis. Po prostu wierzyłem, że należy do -W. Więc nie ma sposobu, aby zdefiniować limit czasu mniejszy niż 1s?
-w
, -c
zostanie zignorowany. Jeśli potrzebujesz tylko jednego polecenia ping, możesz użyć -c 1 -W 4
dowolnego limitu czasu.
Moja strona podręcznika (Fedora 18, iputils-20121221-1.fc18) mówi
-w deadline
Specify a timeout, in seconds, before ping exits regardless of
how many packets have been sent or received. In this case ping
does not stop after count packet are sent, it waits either for
deadline expire or until count probes are answered or for some
error notification from network.
-W timeout
Time to wait for a response, in seconds. The option affects only
timeout in absence of any responses, otherwise ping waits for
two RTTs.
Wszystkie dobre odpowiedzi, ale uważaj na to dziwactwo, jeśli (jak ja) przenosisz kod między platformami. Poniższy tekst pochodzi z odpowiedniej dokumentacji „man ping”.
W systemie Mac OS X:
-W
waittime
Czas w milisekundach oczekiwania na odpowiedź dla każdego wysłanego pakietu.
Na Raspberry Pi:
-W
timeout
Czas oczekiwania na odpowiedź w kilka sekund .
Kodowałem na komputerze Mac, aby poczekać 1 sekundę (1000 ms) jako -W 1000
, ale kiedy ten kod przeniósł się do Pi, czekał do 1000 sekund!
ping
wykonywalny? Istnieje kilka różnych wersji ping z różnymi opcjami.