时间类常用脚本
- Linux
- 2019-04-22
- 351热度
- 0评论
NTP服务器
ntp1.aliyun.com
ntp2.aliyun.com
ntp3.aliyun.com
ntp4.aliyun.com
ntp5.aliyun.com
ntp6.aliyun.com
ntp7.aliyun.com
Windows 3种时间同步方法 [含批处理脚本]
1:Windows 时间同步 分秒校对批处理脚本
将此脚本另存为 .bat格式脚本,点击执行即可,相关参数在脚本里修改,已注释功能介绍。
windows 时间功能其实是支持好几种同步时间类型的,本脚本默认使用ntp模式,相信各位在linux下都用过ntp同步吧。
ntp同步,相比windows默认同步,更好。
@echo off
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if '%errorlevel%' NEQ '0' (
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
title www.nat.ee - 时间同步
set Enabled=1
rem 启动'1' 关闭'0'
set Type=NTP
rem 类型: NoSync NTP NT5DS AllSync
set NtpServer=cn.pool.ntp.org
rem NtpServer: NTP 时间源的域名系统(DNS)名称或 IP 地址。此值的格式是“dns 名称,标志”,其中标志是该主机标志的十六进制位掩码。有关详细信息,请参阅“Windows 时间服务组策略设置”中的“与 Windows Time 关联的 NTP 客户端组策略设置”部分(http://go.microsoft.com/fwlink/?LinkId=139727)。默认值是“time.windows.com,0x09”。
set CrossSiteSyncFlags=2
rem CrossSiteSyncFlags: 此值用位掩码表示,控制 W32time 如何选择其自身站点之外的时间源。可能的值为 0、1 和 2。此值设置为 0(不)时指示时间客户端不应尝试与自身站点之外的时间同步。此值设置为 1(仅 PDC)时指示,当客户端必须与自身站点之外的伙伴同步时间时,只能使用作为其他域中主域控制器(PDC)仿真器操作主机的计算机作为同步伙伴。此值设置为 2(所有)时指示可以使用任何同步伙伴。如果未设置 NT5DS 值,此值将被忽略。默认值为十进制值 2(十六进制值 0x02)。
set ResolvePeerBackoffMinutes=1
rem ResolvePeerBackoffMinutes: 此值(分钟)控制上一次尝试失败时 W32time 再次尝试解析 DNS 名称之前等待的时间。默认值为 15 分钟。
set ResolvePeerBackoffMaxTimes=10
rem ResolvePeerBackoffMaxTimes: 此值控制在重新启动发现进程之前 W32time 尝试解析 DNS 名称的次数。DNS 名称解析每失败一次,下一次尝试之前等待的时间将是前一次等待时间的两倍。默认值为尝试 7 次。
set SpecialPollInterval=60
rem SpecialPollInterval: 此 NTP 客户端值(秒)控制当时间源配置为使用特殊轮询间隔时,轮询手动配置时间源的频率。如果在 NTPServer 设置上启用了 SpecialInterval 标志,则客户端将使用设置为 SpecialPollInterval 的值(而不是 MinPollInterval 和 MaxPollInterval 值)来确定轮询时间源的频率。默认值为 3600 秒(1 小时)。
set EventLogFlags=0
rem EventLogFlags: 此值是一个位掩码,控制可以记录到事件查看器系统日志中的事件。若此值设置为 0x1,则指示每次检测到时间跳跃时 W32time 都将创建一个事件。若此值设置为 0x2,则指示每次更改时间源时 W32time 都将创建一个事件。此值是一个位掩码值,因此将其设置为 0x3(0x1 与 0x2 的和)时指示同时记录时间跳跃和时间源更改。
set W32Time=HKLM\SYSTEM\CurrentControlSet\services\W32Time
Reg add "%W32Time%\Parameters" /v "NtpServer" /t REG_SZ /d "%NtpServer%" /f > nul
Reg add "%W32Time%\Parameters" /v "Type" /t REG_SZ /d "%Type%" /f > nul
Reg add "%W32Time%\TimeProviders\NtpClient" /v "Enabled" /t REG_DWORD /d "%Enabled%" /f > nul
Reg add "%W32Time%\TimeProviders\NtpClient" /v "CrossSiteSyncFlags" /t REG_DWORD /d "%CrossSiteSyncFlags%" /f > nul
Reg add "%W32Time%\TimeProviders\NtpClient" /v "ResolvePeerBackoffMinutes" /t REG_DWORD /d "%ResolvePeerBackoffMinutes%" /f > nul
Reg add "%W32Time%\TimeProviders\NtpClient" /v "ResolvePeerBackoffMaxTimes" /t REG_DWORD /d "%ResolvePeerBackoffMaxTimes%" /f > nul
Reg add "%W32Time%\TimeProviders\NtpClient" /v "SpecialPollInterval" /t REG_DWORD /d "%SpecialPollInterval%" /f > nul
Reg add "%W32Time%\TimeProviders\NtpClient" /v "EventLogFlags" /t REG_DWORD /d "%EventLogFlags%" /f > nul
sc config W32Time start= auto > nul
net start W32Time > nul 2>&1
EXIT
2:使用windows自带ntp客户端进行时间同步的方法
1、开始-->运行输入gpedit.msc
2、计算机配置-->管理模板-->系统-->Windows时间服务-->时间提供程序-->右单击“配置Window NTP客户端”,选择属性。
a、选择“已启用”
b、在Ntp Server对应栏位输入时间同步服务器的地址。
c、Tpye栏位选择NTP。
d、SpecialPollInterval栏位输入需要同步的时间周期,单位:秒,如:每10分钟同步一次,输入600。
e、确定。
3、计算机配置-->管理模板-->系统-->Windows时间服务-->时间提供程序-->右单击“启用Window NTP客户端”,选择属性。
a、选择“已启用”
4、计算机配置-->管理模板-->系统-->Windows时间服务-->时间提供程序-->右单击“启用Window NTP服务端”,选择属性。
a、选择“已禁用”
5、时间和日期属性中,填入时间同步服务器地址,方便必要时进行手动同步。
3:设置Window7系统时间默认同步频率方法
https://jingyan.baidu.com/article/b0b63dbf177ec94a48307084.html
cmd获取当前时间
@echo off
::获取⽇期 将格式设置为:20110820
set datevar=%date:~0,4%%date:~5,2%%date:~8,2%
::获取时间中的⼩时 将格式设置为:24⼩时制
set timevar=%time:~0,2%
if /i %timevar% LSS 10 (
set timevar=0%time:~1,1% )
::获取时间中的分、秒 将格式设置为:3220 ,表⽰ 32分20秒
set timevar=%timevar%%time:~3,2%%time:~6,2%
@echo 当前时间:%datevar%%timevar%