system("ping -c 1 127.0.0.1 > /dev/null");
Если сделать трюк. -c 1
отправляет только один пакет. Мы подключаемся к /dev/null
, так как мы не заботимся о выходе на stdout (это список, на который вы ссылаетесь?). Если вы также хотите сбросить stderr, добавьте 2>&1
в конец. Вы также можете ограничить время отклика, используя -W
.
Вызов возвращает целое число, представляющее успех или сбой. 0 указывает на успех, в то время как ненулевое целое число представляет ошибку. Вот пример кода: http://ideone.com/cf0eR
Помните, что неудачный запрос не гарантирует, что устройство находится в автономном режиме. Хотя в вашей контролируемой среде, вероятно, разумно ожидать, что она будет работать.
Я попробовал, но на самом деле ничего не выводит, если устройство подключено или нет ... – JNK
@JNK Функция 'system()' возвращает целое число, как я объяснил. Я целенаправленно отбрасывал все остальные выходные данные по трубопроводам на '/ dev/null'. – marcog
Моя ошибка ... работает! : D – JNK