The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
use SNMP get sysUpTime.0 - help, !*! den68, 21-Фев-08, 03:36  [смотреть все]
Попытки получить дату в читаемом формате ни кчему не превели,

use SNMP;
my $sess = new SNMP::Session(DestHost => '10.1.1.4', Community => $community, ....

print $sess->get('sysUpTime.0'); выдает цифру типа 228881960, попытки преобразовать из unix стамп (я правильно понимаю что именно в этом формате оно и есть), ни к чему не превели:

($sec,$min,$hour,$mday,$mon) = ((localtime($sess->get('sysUpTime.0')))[1,2,3,4,5]);
print "($sec,$min,$hour,$mday,$mon)\n";

=(,,,,)

что это за тип ? и как попроще получить дату в читаемом формате ?

  • use SNMP get sysUpTime.0 - help, !*! allez, 08:14 , 21-Фев-08 (1)
    >print $sess->get('sysUpTime.0'); выдает цифру типа 228881960, попытки преобразовать из unix стамп (я правильно понимаю что именно в этом формате оно и есть), ни к чему не превели:

    У меня Perl просто выругался на квадратные скобки, в которых вы указали нужные вам
    индексы. Насколько я помню, localtime() возвращает не массив, а структуру, поэтому
    можно попытаться сделать так (просто не используйте ненужные переменные):

    ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($sess->get('sysUpTime.0'));

    Кстати, интересно, если полученное вами число (а не цифра ;-)) обозначает дату, то дата эта
    очень уж "лохматая" получается: Sun Apr  3 02:19:20 UTC 1977.

    Если же это - количество секунд, прошедшее с момента запуска системы (а ничего другого
    у меня с sysUpTime не ассоциируется), то аптайм получается очень даже нехилый - 7 лет,
    3 месяца и 2 дня с хвостиком. :-)

    P. S. А еще почитайте "perldoc Time::Local" - возможно, пригодится.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру