Информация
Настройка
Новости
Контакты
Новинка
Распродажа
Оплата
Доставка
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • Changelogs
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    RouterOS
    Формат времени безотказной работы точки доступа.

    Формат времени безотказной работы точки доступа.

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Формат времени безотказной работы точки доступа., RouterOS
     
    mosesjere
    Guest
    #1
    0
    21.02.2006 08:37:00
    Я запланировал скрипт, который ежедневно сохраняет статистику использования точки доступа, но хотелось бы, чтобы время безотказной работы отображалось в формате ЧЧ:ММ:СС или просто в секундах, а не в формате wdhms (неделя, день, час, минута, секунда). Может кто-нибудь помочь мне преобразовать его в нужный формат или подсказать команду, которая выдаст результат в требуемом формате? Спасибо, Moses.
     
     
     
    bokad
    Guest
    #2
    0
    31.03.2006 11:03:00
    Ниже представлена функция PHP, которая принимает формат времени Mikrotik (например, 5d10h23m14s) и возвращает количество секунд.  С этого можно легко преобразовать его в формат hh:mm:ss или любой другой нужный формат.  Возможно, в PHP уже есть встроенная функция, которая это делает. Проверьте http://www.php.net.  Конечно, нужно запускать это на ПК, а не на самом MT.  В настоящее время она рассчитывает только дни, часы, минуты и секунды, но ее можно легко изменить, чтобы она обрабатывала недели. Она начинается с левой части вывода MT и проверяет наличие дней, если они есть, то считывает сколько их и удаляет эту часть из вывода MT. Проверяет часы и т.д.
    --------------------Начало кода------------------
    <?php
    function UptimeInSeconds($uptime) {

    $mark1=strpos($uptime, "d");
    $days=substr($uptime, 0, $mark1);
    if ($mark1) $uptime=substr($uptime, $mark1  + 1);

    $mark1=strpos($uptime, "h");
    $hours=substr($uptime, 0, $mark1);
    if ($mark1) $uptime=substr($uptime, $mark1 + 1);

    $mark1=strpos($uptime, "m");
    $minutes=substr($uptime, 0, $mark1);
    if ($mark1) $uptime=substr($uptime, $mark1 + 1);

    $mark1=strpos($uptime, "s");
    $seconds=substr($uptime, 0, $mark1);
    if ($mark1) $uptime=substr($uptime, $mark1 + 1);

    $total=($days * 86400) + ($hours * 3600) + ($minutes * 60) + $seconds;

    return $total;

    }
    ?>
    --------------------Конец кода------------------
     
     
     
    mfrater
    Guest
    #3
    0
    11.05.2014 11:15:00
    Вот как это сделать с помощью скриптов в Router OS. # Преобразование временной строки с неделями/днями/час:мин:сек в просто час:мин:сек
    # Автор: Mark Frater
    # 11-May-2014
    :local uptimehms;
    :local uptime;
    :local days;
    :local weeks;
    :local hours;
    :local daypos;
    :set daypos (0);

    :set uptime ("1w3d10:51:24");
    :put $uptime;

    :for pos from=0 to=([:len $uptime] - 8) do={
    # Находим "w" и недели
     :if ([:pick $uptime $pos] = "w") do={
    :set weeks ( [:pick $uptime 0 ($pos)] );
    :put "weeks = $weeks";
    :set daypos ($pos+1);
      }
    # Находим "d" и дни
      :if ([:pick $uptime $pos] = "d") do={
    :set days ( [:pick $uptime ($daypos) ($pos)] );
    :put "days = $days";
      }
    }
    # Пересчитываем часы и добавляем :мин:сек
    :set hours ([:pick $uptime ([:len $uptime]-8) ([:len $uptime]-6)]);
    :put "hours = $hours";
    :set uptimehms ([:tostr (($weeks * 24 * 7) + ($days * 24) + $hours)].([:pick $uptime ([:len $uptime]-6) [:len $uptime]]));
    :put $uptimehms
     
     
     
    wencs
    Guest
    #4
    0
    19.03.2018 01:07:00
    // исправление <?php
    function secondsToTime($seconds) {
    $dtF = new \DateTime('@0');
    $dtT = new \DateTime("@$seconds");
    $dias     = $dtF->diff($dtT)->format('%a');
    $horas    = $dtF->diff($dtT)->format('%h');
    $minutos  = $dtF->diff($dtT)->format('%i');
    $segundos = $dtF->diff($dtT)->format('%s');
    $tiempo = "";
    $coma = "";
    if ($dias>0){
    if ($dias>1){$tiempo .= $dias." Dias";}else{$tiempo .= $dias." Dia";}
    $coma = ", ";
    }
    //
    if ($horas>0){
    if ($horas>1){$tiempo .= $coma.$horas." Horas";}else{$tiempo .= $coma.$horas." Hora";}
    $coma = ", ";
    }else{
    $coma = "";
    }
    //
    if ($minutos>0){
    if ($minutos>1){$tiempo .=", ". $minutos." Minutos";}else{$tiempo .= ", ".$minutos." Minuto";}
    }else{
    $coma = "";
    }
    //
    if ($segundos>0){
    if ($segundos>1){$tiempo .= ", ".$segundos." Segundos ";}else{$tiempo .= ", ".$segundos." Segundo ";}
    }
    return $tiempo;
    }

    function UptimeInSeconds($uptime) {
    //
    $mark1=strpos($uptime, "w");
    $weeks=substr($uptime, 0, $mark1);
    if ($mark1) $uptime=substr($uptime, $mark1 + 1);
    //
    $mark1=strpos($uptime, "d");
    $days=substr($uptime, 0, $mark1);
    if ($mark1) $uptime=substr($uptime, $mark1 + 1);
    //
    $mark1=strpos($uptime, "h");
    $hours=substr($uptime, 0, $mark1);
    if ($mark1) $uptime=substr($uptime, $mark1 + 1);
    $mark1=strpos($uptime, "m");
    $minutes=substr($uptime, 0, $mark1);
    if ($mark1) $uptime=substr($uptime, $mark1 + 1);
    $mark1=strpos($uptime, "s");
    $seconds=substr($uptime, 0, $mark1);
    if ($mark1) $uptime=substr($uptime, $mark1 + 1);
    $total=($weeks * 604800) + ($days * 86400) + ($hours * 3600) + ($minutes * 60) + $seconds;
    return secondsToTime($total);

    }
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2025 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры