2 / 2 / 0
Регистрация: 19.10.2015
Сообщений: 185
|
|
Синхронизация времени с корректировкой03.05.2017, 16:53. Показов 31734. Ответов 22
Метки нет Все метки)
(
Здравствуйте сам я в программировании профан, но реалии жизни вынуждают. Вот решил обратиться к специалистам.
Суть моей проблемы в следующем: как с помощью (CMD/BAT) синхронизировать системное время на компьютере с сервером ntp21.vniiftri.ru (89.109.251.21) и прибавить к нему 5 секунд после синхронизации (5 секунд это для примера, нужно будет подбирать данный параметр опытным путём)? Корректировка не будет превышать 10 секунд.
0
|
03.05.2017, 16:53 | |
Ответы с готовыми решениями:
22
Синхронизация времени по локальной сети Синхронизация времени Windows Server 2008 с сервером времени Синхронизация времени в AD |
![]() |
||||||
04.05.2017, 00:49 | ||||||
Updated. Изменил блок синхронизации. Чтобы новый сервер подтягивался службой времени ее нужно либо останавливать и после реконфигурации перезапускать, либо использовать параметр /update в w32tm.
2
|
![]() |
|
04.05.2017, 10:35 | |
Просто добавить доли не получится - cmd работает только с целыми числами.
Поэтому нужно формулу расчета времени переводить на миллисекунды - тогда и итоговое время будет с миллисекундами. Немного попозже попробую перевести.
0
|
![]() |
|||||||||||
04.05.2017, 10:51 | |||||||||||
В принципе, если вам точный перевод времени не нужен - достаточно просто к итоговой строке времени
1
|
![]() |
|||||||||||
04.05.2017, 12:21 | |||||||||||
А вот здесь я не понял :-) Здесь делается замена возможного пробела в числах на 0 (пробел вместо ведущего ноля может появляться во времени до 10 утра).
------------------------------------ Формулу на миллисекунды на перевел, однако подстановка результата дает странный эффект: Ввожу 1500 миллисекунд.
Новое время должно быть 12:3:0,57 , однако time делает из 57 сотых => 5 сотых. И так постоянно.Где тут косяк :-)?
0
|
Любознательный
![]() 6952 / 2106 / 347
Регистрация: 10.03.2016
Сообщений: 4,852
|
|
04.05.2017, 12:30 | |
Garry Galler,
Возможно, не причина, но тем не менее...на первый взгляд: Вот здесь, какие-такие единицы мы получим? ![]() ч*мин*мсек
0
|
![]() |
|
04.05.2017, 13:50 | |
YuS_2,
Ну здесь - (12 * 3600 * 1000) - должно получиться целое число миллисекунд равное 12 часам=43200000. Разве нет? Добавлено через 5 минут А вот с прибавлением + 70 похоже косяк. Там же доли: 70 это 0.7, то есть 700 мск. Добавлено через 44 минуты А еще косяк, что числа типа 08 и 09 будут cmd забракованы из-за ведущего ноля. Но это понятно как исправить: добавлением единицы и вычитанием 100.
0
|
Любознательный
![]() 6952 / 2106 / 347
Регистрация: 10.03.2016
Сообщений: 4,852
|
|
04.05.2017, 13:55 | |
Да, верно ... это я тут по диагонали, одним глазом форум читаю
![]() 3600 равно 60*60, вот где секунды потерялись у меня ![]()
0
|
![]() |
||||||
04.05.2017, 14:25 | ||||||
lapin9126,
Просто замените в коде цикл на этот:
Миллисекунды добавляйте как вы это делаете сейчас - просто помните, что на самом деле вы добавляете не целое число, а сотые доли от секунды. ---------------------------------- Что касается формулы перевода в миллисекунды: мне кажется тут бессмысленно бодаться с time - она воспринимает целое число миллисекунд, которое точно высчитывает формула, как сотую долю от секунды - то есть автоматом это число делит на 100, вместо того, чтобы принять то, что ей дают как готовый отформатированный набор чисел.
0
|
2 / 2 / 0
Регистрация: 19.10.2015
Сообщений: 185
|
||||||
04.05.2017, 14:44 [ТС] | ||||||
Я правильно понял конечный код должен быть такой:
0
|
![]() |
|
04.05.2017, 15:24 | |
Да, пока это все что я могу предложить.
P.S. Пробелы в присвоениях переменных - до и после знака равно - лучше убрать. Они в батниках как минимум нежелательны, как максимум приводят к ошибкам, хотя при сложении чисел вроде не влияют. Это у меня python code style уже мешает батники правильно писать :-)
0
|
2 / 2 / 0
Регистрация: 19.10.2015
Сообщений: 185
|
|
05.05.2017, 04:22 [ТС] | |
Хорошо, подправлю. Еще раз благодарю за помощь.
Добавлено через 12 часов 15 минут Протестировал сегодня утром с 8 часов. 08 в CMD считает 8-ричной системой счисления и вот что получается. Надо искать альтернативный метод. Отправка команды синхронизации на локальный компьютер Команда выполнена успешно. ============================ сервер синхронизации: ntp2.stratum2.ru ============================ [ENTER the offset in seconds]:5 ============================ ТЕКУЩЕЕ ВРЕМЯ: 8:19:00,15 ============================ (08 * 3600) + (19 * 60) + 00 = 1140 1140 + 5 = 1145 ============================ НОВОЕ ВРЕМЯ: 0:19:5 ============================ time before: 8:19:00,16 time new: 0:19:5 time after: 0:19:04,99 Для продолжения нажмите любую клавишу . . .
0
|
![]() |
|
05.05.2017, 15:10 | |
0
|
2 / 2 / 0
Регистрация: 19.10.2015
Сообщений: 185
|
||||||
05.05.2017, 15:47 [ТС] | ||||||
Да кто его знает. Может в коде что-то не так. Спасибо за помощь. Пытаюсь на VBS написать.
0
|
![]() |
|
05.05.2017, 15:59 | |
lapin9126,
Ну вы же используете первую версию кода, которая не содержит исправления ошибки ведущего нуля. Вот в этом посте вы же сами прикрепили правильную версию кода, в которую внесены мои поправки переменных. И эту версию вы почему-то НЕ используете...
0
|
2 / 2 / 0
Регистрация: 19.10.2015
Сообщений: 185
|
|
05.05.2017, 16:17 [ТС] | |
Прошу прощения, с утра наверно еще не проснулся и не то скопировал.
0
|
05.05.2017, 16:17 | ||||||
Помогаю со студенческими работами здесь
20
синхронизация времени Синхронизация времени клиентов с сервером Синхронизация времени между серверами Синхронизация времени Windows server 2003 Синхронизация времени контроллера домена от рабочей станции Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Форматирование строк в Python
py-thonny 15.04.2025
Форматирование строк — одна из тех базовых возможностей Python, которые сопровождают разработчика каждый день. Эта задача кажется тривиальной на первый взгляд, но на самом деле представляет собой. . .
|
Слайсы в Go
golander 15.04.2025
Слайсы — важнейшая структура данных в Go, значение которой сложно переоценить. С момента создания языка разработчики Go позиционировали слайсы как основной механизм для работы с последовательностями. . .
|
Как использовать Behavior Graph в Unity при создании игрового AI
GameUnited 14.04.2025
Искусственный интеллект в играх прошел долгий путь эволюции. От простейших алгоритмов, движущих призраками в Pac-Man, до сложных систем, управляющих поведением персонажей в современных AAA-проектах. . . .
|
Создание и стилизация списков в SwiftUI
mobDevWorks 14.04.2025
Списки — фундаментальный элемент мобильных интерфейсов. От списка контактов до ленты новостей, от настроек до каталога товаров — трудно представить приложение, которое не использовало бы этот. . .
|
Паттерн SAGA и распределённые транзакции в микросервисной архитектуре
stackOverflow 14.04.2025
Переход от монолитной архитектуры к микросервисам принес множество преимуществ: гибкость разработки, независимость развертывания и масштабирования отдельных компонентов. Однако этот переход создал и. . .
|
Кастомные аллокаторы в C++ и оптимизация управления памятью
bytestream 14.04.2025
Работа с памятью в С++ всегда была и остаётся одной из самых увлекательных и сложных задач для программиста. Любой опытный C++ разработчик подтвердит: стандартные механизмы аллокации памяти – штука. . .
|
Организация сетей в Kubernetes и эффективное развертывание
Mr. Docker 14.04.2025
Сетевая инфраструктура Kubernetes представляет собой сложную, но хорошо спроектированную систему, которая позволяет контейнерам взаимодействовать между собой и с внешним миром. За кажущейся простотой. . .
|
Многопоточность в Rust: Fearless concurrency и практические примеры
golander 14.04.2025
Многопоточное программирование связано с рядом известных проблем. Наиболее распространенные из них — гонки данных (data races), взаимные блокировки (deadlocks) и условия гонки (race conditions). Эти. . .
|
Списки и кортежи в Python: различия, особенности, применение
py-thonny 13.04.2025
Python славится своей гибкостью при работе с данными. В арсенале языка есть две основные последовательные структуры данных, которые программисты используют ежедневно — списки и кортежи. Эти структуры. . .
|
Middleware в ASP.NET Core
UnmanagedCoder 13.04.2025
В ASP. NET Core термин "middleware" занимает особое место. Что же это такое? Middleware представляет собой программные компоненты, которые формируют конвейер обработки HTTP-запросов в приложении. . . .
|