如何用一个.bat文件运行一下快速与Internet同步计算机时间?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用一个.bat文件运行一下快速与Internet同步计算机时间?相关的知识,希望对你有一定的参考价值。

我是一个卖电脑的店铺员工,好多客户回去收到电脑后看见系统时间不是现在的时间,就说我们卖的是旧机器,旧配件,我希望能有一个.bat的文件,点击运行一下就可以快速联网同步电脑时间,然后我们测试完了机器后运行一下就可以删除.bat文件。

如何用一个.bat文件运行一下快速与Internet同步计算机时间?
如果想要立刻与新的时间服务器同步,一个.bat的文件 则执行下面的命令: w32tm /register net start w32time w32tm /config /update w32tm /resync /rediscover
参考技术A 如果想要立刻与新的时间服务器同步,一个.bat的文件

则执行下面的命令:

w32tm /register

net start w32time

w32tm /config /update

w32tm /resync /rediscover
参考技术B 以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI/*&cls&echo off
rem 获取网络时间对本地电脑进行时间同步/校准
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
for /f "tokens=1*" %%a in ('cscript -nologo -e:jscript "%~f0"') do (
    echo;%%a %%b
    date %%a
    time %%b
)
echo;%#% +%$%%$%/%@% %z%
pause
exit
*/
function add(z)return Number(z)<10?'0'+z:z;
var req=null, now=null;
var mx=['MSXML2.ServerXMLHTTP.6.0','MSXML2.ServerXMLHTTP.3.0','MSXML2.ServerXMLHTTP'];
var host=['moc+udiab+www##:sptth','moc+oaboat+www##:sptth','moc+vtcc+www##:sptth'];
for(var i=0;i<mx.length;i++)
    try
        req=new ActiveXObject(mx[i]);
        break;
    catch(err)

if(req==null)WSH.StdErr.WriteLine("Can't build XMLHTTP object");WSH.Quit();

for(var i=0;i<host.length;i++)
    try
        url=host[i].replace(/#/g,'/').split('').reverse().join('').replace(/\\+/g,'.');
        req.open('GET', url, false);
        req.send();
        var gmt=req.getResponseHeader('Date');
        if(gmt !=''&&gmt !=null)
            WSH.StdErr.WriteLine(gmt);
            now=new Date(gmt);
            break;
        
    catch(err)WSH.StdErr.WriteLine(err.message);

if(now !=null)
    var y=now.getFullYear(),m=now.getMonth()+1,d=now.getDate();
    var hh=now.getHours(),mm=now.getMinutes(),ss=now.getSeconds();
    WSH.echo(y+'-'+add(m)+'-'+add(d)+' '+add(hh)+':'+add(mm)+':'+add(ss));
elseWSH.StdErr.WriteLine('Failed to get Internet Time');
WSH.Quit();

如何用一个bat文件调用另外两个bat文件?

有两个bat文件(不在同一个文件夹中),我想用一个bat文件调用执行这两个文件,该怎样写代码?
要依次执行文件,并且能从bat中返回来(不要运行完了还留个窗口)。比如这两个文件的地址分别为:c:\1\a.bat ; c:\2\a.bat

项目运行时,需要先运行selenium-server.bat,启动成功一个在运行build.bat,达到每个类都运行的效果。\x0d\x0a@echooff\x0d\x0astartselenium-server.bat\x0d\x0aechowscript.sleep5000>delay.vbs\x0d\x0acscript//nologodelay.vbs&deldelay.vbs\x0d\x0acallbuild.bat 参考技术A setlocal enabledelayedexpansion
set /a n=0
for /f %%i in ('tasklist ^|findstr /i "cmd.exe" ' ) do (
set /a n=!n!+1
)
set /a old=%n%
start c:\1\a.bat

:loop
set /a n=0
for /f %%i in ('tasklist ^|findstr /i "cmd.exe" ' ) do (
set /a n=!n!+1
)
set /a new=%n%
ping 127.1 -n 2 > nul
if %new% gtr %old% goto loop|| goto bat2

:bat2
start c:\2\a.bat
--------------------------
不知道是不是我想复杂了....
看批处理吧
就是检测当前系统运行过程中CMD进程数量 也就是 调用1.bat之后 检测到 少了一个CMD.exe进程才进行下一步操作 调用bat2

缺点也很明显
1.第一个BAT运行完之后可以自动退出..一般没有pause运行完也就关了..
2.运行此脚本之后 如果后台还有CMD.EXE进程运行,第一个BAT运行过程中 恰好后台的CMD进程结束,也会提前调用第二个BAT
3. ...运行中要是别的程序又开了CMD进程 没有关闭 那就没办法调用第二个bat..本回答被提问者采纳
参考技术B 项目运行时,需要先运行selenium-server.bat,启动成功一个在运行build.bat,达到每个类都运行的效果。
@echo off
start selenium-server.bat
echo wscript.sleep 5000 > delay.vbs
cscript //nologo delay.vbs & del delay.vbs
call build.bat
参考技术C @echo off
start c:\1\a.bat
start c:\1\a.bat
最上面个时隐藏自己
下面两个是打开文件
参考技术D start 1.bat
start 2.bat

以上是关于如何用一个.bat文件运行一下快速与Internet同步计算机时间?的主要内容,如果未能解决你的问题,请参考以下文章

如何用C语言运行一个bat文件

如何用批处理打开文件

如何用一个bat文件调用另外两个bat文件?

急!急!急!如何用bat运行一个影片并且全屏播放

如何用bat文件启动一个exe文件

如何用bat批处理进行简化快速文件搜索,并将结果输出到列表文件