utilは知りませんが、perlを使用して簡単なコードを自分で作成しました。
#!/usr/bin/perl
use Net::Ping;
use POSIX qw/strftime/;
if (-e '/var/run/net_test.pid') {
print "net_test already running.\n";
exit;
} else {
system "touch /var/run/net_test.pid";
}
my $host = "www.google.com";
my $ping = Net::Ping->new('icmp');
my $result = $ping->ping($host,2);
if ($result != 1) {
$format = strftime('[%d/%m/%Y %H:%M:%S]',localtime)." Internet is not available...";
$run = `echo $format >> /var/log/virtua_net`;
while ($result != 1) {
$result = $ping->ping($host,2);
sleep 60;
}
$format = strftime('[%d/%m/%Y %H:%M:%S]',localtime)." Internet is back...";
$run = `echo $format >> /var/log/virtua_net`;
} else {
$format = strftime('[%d/%m/%Y %H:%M:%S]',localtime)." Internet is ok...";
$run = `echo $format >> /var/log/virtua_net`;
}
$ping->close();
system "rm -rf /var/run/net_test.pid" if (-e "/var/run/net_test.pid");
exit;
これは、実行するたびにgoogleへのpingを試行し、応答があったかどうかにかかわらず、時間とともにインターネットに接続できなかった場合に後で確認できるように、ファイルに出力します。
あなたがそれを好きなら、私はwindowsで使用されるように小さな変更を加えることができます、そしてあなたはすべてであるActivePerlをインストールする必要がありました。
必要な唯一の変更は、Windowsで他とは異なるパスとコマンドです。