`
hmi213tv
  • 浏览: 11425 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

延时批处理

 
阅读更多

延时批处理
2012年01月12日
  举个例子,我们要延时5秒打开gdh.txt这个文件,可以用以下几个方法
  方法一:ping
  缺点:时间精度为1秒,不够精确
  @echo off
  @ping 127.0.0.1 -n 6 >nul
  start gdh.txt
  方法二:vbs start /wait
  缺点:生成临时文件
  有点:时间精度为0.001秒,精度高
  @echo off
  echo wscript.sleep 5000>sleep.vbs
  start /wait sleep.vbs
  start gdh.txt
  del /f /s /q sleep.vbs
  方法三:vbs cscript.
  @echo off
  echo wscript.sleep 5000>sleep.vbs
  @cscript sleep.vbs >nul
  start gdh.txt
  del /f /s /q sleep.vbs
  方法四:choice
  优点:时间精确,CPU占用低,是最佳选择
  @echo off
  choice /t 5 /d y /n >nul
  start gdh.txt
  批处理延时方法小结:
  1.ping
  @echo off
  :loop
  echo %time%
  ping 127.1 -n 2 1>nul
  echo %time%
  goto loop
  内存使用: cmd.exe 1704k
  ping.exe 2920k   
  误差评定: 较高
  优点:       代码构造简单
  缺点:       内存占用高,延迟时间长的话误差相对较大。
  2.还是ping
  @echo off
  :loop
  echo %time%
  ping 1 -n 1 -w 1000 2>nul 1>nul
  echo %time%
  goto loop
  内存使用: cmd.exe 1700k
  ping.exe 2912k
  误差评定: 一般
  优点:        代码构造简单,时间越长误差越小,精确度较高(50ms)
  缺点:        内存占用高
  3.call
  CODE:  
  @echo off
  :loop
  echo %time%
  call :delay 1000
  echo %time%
  goto loop
  :delay
  set /a num=num + 1
  if %num% geq %1 (set num=) && goto :eof
  rem    for /l %%i in (1,1,%1) do echo. >nul
  goto :eof
  内存使用: cmd.exe 1744k [for语句方案]
  cmd.exe 1740k [set+goto方案]
  误差评定: 很高 (受CPU频率影响非常大,几乎无法准确把握全局延迟时间)
  优点:       精确度较高
  缺点:        不适合需精确把握时间的场合
  4.msg
  CODE:  
  @echo off
  :loop
  echo %time%
  msg %username% /time:20 /w "正在延时,点确定可以取消延时!"
  echo %time%
  goto loop内存使用: cmd.exe 1752k
  msg.exe 2620k
  误差评定: 低
  优点:       比较稳定,可中途取消延时,代码构造简单
  缺点:        内存占用非常大,有窗口弹出(优点?缺点?)
  5.vbs
  CODE:  
  @echo off
  echo Wscript.Sleep WScript.Arguments(0) >%tmp%\delay.vbs
  :loop
  echo %time%
  cscript //b //nologo %tmp%\delay.vbs 2000
  echo %time%
  goto loop
  内存使用: cscript.exe 4812k
  cmd.exe    1708k
  误差评定: 很低
  优点:        精确度最高,使用更灵活,方便
  缺点:        产生临时文件,内存占用多
  @echo off
  set /a Start=%time:~6,2%
  :ProDelay
  set /a Now=%time:~6,2%
  set /a Diff=%Now%-%Start%
  rem 以下这一句可以防止秒数从59跳到1时产生的错误。
  if %Diff% lss 0 set /a Diff=%Diff%+60
  if %Diff% leq 2 gotoroDelay
  echo ok!
  一个取代choice命令的批处理 (精典)
  @echo off && setlocal && cls
  :tou
  chcp 437 >nul
  graftabl 936 >nul
  set /p=请选择 [ 回车键 --- 执行A             其它键 --- 执行B ]:nul
  echo.&echo.&echo.
  if [%errorlevel%]==[13] ( goto :A ) else ( goto :B )
  :A
  ::按回车符到这里执行
  echo 这里是标签: A
  echo.
  goto :End
  :B
  ::按其它键到这里执行
  echo 这里是标签: B
  echo.
  goto :End
  :End
  ::     用于测试键值的代码段
  ::     如果希望代替Choice外部命令,则这个代码段可以测试出不同的键值交由%ErrorLevel%判断
  echo 所输入的ASCII码键值: %errorlevel%
  echo.&echo.&echo.&echo.&echo.&Pause
  cls
  goto tou
  @echo off
  :go
  cls
  echo 计算机将于 17:40 关机
  echo 现在时间是 %time%
  echo %time% >time.txt
  find /i "17:48" time.txt >nul
  if %errorlevel%==1 goto go
  taskkill /f /im cmd.exe
  exit
  实时显示当前时间
  @echo off
  echo %time:~0,-3%
  ping -n 2 127.1>nul&cls&%0
  ::第二行代码说明:“:”和“~”必不可少!“~”后的数字:为正数表示舍弃输出结果的前几位;直接跟负数表示取到输出结果的后第几位。逗号后的数字:为正数表示取到输出结果的前第几位;为负数表示舍弃输出结果的后几位。echo %date:~4% echo %time:~-3% echo %date:~4% %time:~0,-3%
  现在我有一条路径:c:\windows\system32\
  我想删除最后一个字符"\"变为c:\windows\system32
  set "str=c:\windows\system32\"
  echo %str:~0,-1%
  逐字显示
  @echo off&color 0a&title 做语文老师真不容易
  set /p= nul
  逐字显示:我是一个中国人
  @echo off
  for %%a in (我 是 一 个 中 国 人) do ping -n 2 127.0|set /p b=%%a
  for /d %%a in (我 是 一 个 中 国 人) do set /p b=%%anul
  ::自注set后面的%%a如果添加空格,效果是:我 是 一 个,不加空格,效果是:我是一个
  @echo off&setlocal enabledelayedexpansion
  set "str=http://bbs.cn-dos.net"
  for /l %%a in (0 1 50) do (
  if "!str:~%%a,1!" neq "" (
  set/p=!str:~%%a,1!nul
  ) else (
  pause>nul&exit/b
  )
  )
  计划任务设定
  SCHTASKS /Create /SC DAILY /RU administrator /RP HZF /TN HU /SD 2008/11/21 /ST 21:30:00 /TR c:\windows\system32\notepad.exe
  对比延时
  @echo off
  set /a Start=%time:~6,2%
  :ProDelay
  set /a Now=%time:~6,2%
  set /a Diff=%Now%-%Start%
  rem 以下这一句可以防止秒数从59跳到1时产生的错误。
  if %Diff% lss 0 set /a Diff=%Diff%+60
  if %Diff% leq 2 gotoroDelay
  echo ok!
  利用选择延时
  @echo off && setlocal && cls
  :tou
  chcp 437 >nul
  graftabl 936 >nul
  set /p=请选择 [ 回车键 --- 执行A             其它键 --- 执行B ]:nul
  echo.&echo.&echo.
  if [%errorlevel%]==[13] ( goto :A ) else ( goto :B )
  脚本:将一下内容复制,粘贴记事本中,另存为run.vbs。把脚本放在
  C:\Documents and Settings\你的名字\「开始」菜单\程序\启动
  wscript.sleep 36000
  Set WshShell = WScript.CreateObject("WScript.Shell")
  WshShell.run("D:/工具与备份/maxthon/maxthon.exe")
分享到:
评论

相关推荐

    Windows 延时启动批处理脚本

    一个Windows批处理脚本,可以实现秒级别延时启动程序

    延迟启动程序批处理文件

    批处理延时启动应用程序或执行指令,其中300是延时300S的意思

    BAT脚本程序实现10秒延时

    利用bat批处理程序实现10秒延时 实现方法简单,使用方便

    命令行程序批处理延时Sleep.exe

    Sleep.exe用于命令行程序 批处理 延时用的,占用资源少。本来也是批处理生成出来的,关于生成方法网上有许多。

    不完全破解-超级嗅探狗附BAT延时使用批处理

    CSDN的朋友有福了,想下载破解版超级嗅探狗的朋友在这免积分提供下载了,不过其实并不是真正意义上的破解,只不过不断将15天的限制时间重置...原创的批处理文件还有一个暂停和任意键继续,取消后可以完美加入计划任务。

    tomcat_批处理延时命令bat@计划任务

    zip压缩包里有4个tomcat_批处理bat,其实内容都一样,设计初衷是服务器开机时计划任务执行批处理启动tomcat(适合免安装版的tomcat),仅提供大家参考或使用。

    Windows命令行bat批处理延迟sleep方法(批处理延时)

    主要介绍了Windows命令行bat批处理延迟sleep方法,需要的朋友可以参考下

    批处理学习笔记

    自学批处理笔记(13)goto for 变量延时 自学批处理笔记(14)assoc ftype pushd popd call shift 批处理的练习(1) 批处理的练习(2)图形界面的制作 自学批处理笔记(15)find findstr 批处理练习(3) 文件处理 ...

    程序定时运行器 批处理程序

    这是一个用批处理调用VBS的小程序!功能是经过用户规定的时间后,来运行用户指定的程序、文件! 呵呵,可能还是有点不明白什么意思,比如说,点击下载了本程序后,双击它,就会弹出一个对话框提示说“请输入延时时间...

    超强批处理教程.rar

    第一章 批处理基础 第一节 常用批处理内部命令简介 1、REM 和 :: 2、ECHO 和 @ 3、PAUSE 4、ERRORLEVEL 5、TITLE 6、COLOR 7、mode 配置系统设备 8、GOTO 和 : 9、FIND 10、START 11、assoc...

    bat如何延时删除指定文件夹中的文件

    编写批处理文件时,需要运行一个命令后,延迟一二秒再运行下一个命令,那么该如何实现呢?这篇文章就跟大家分享了bat延时删除指定文件夹中的文件的方法,文中介绍的很详细,感兴趣的朋友们可以参考借鉴,下面来一起...

    批处理教程(dos)大全

    内含本人收集的大型综合性脚本,格式转换脚本,获取路径脚本,精确延时脚本,数值计算脚本,网络类脚本,文件创建改名脚本,系统类脚本,系统信息查询修改脚本,系统优化脚本,字符串提取替换脚本,其他等

    dos批处理教程(实用)

    第一章批处理基础 第一节常用批处理内部命令简介 1、REM 和:: 2、ECHO 和@ 3、PAUSE 4、ERRORLEVEL 5、TITLE 6、COLOR 7、mode 配置系统设备 8、GOTO 和: 9、FIND 10、START 11、assoc 和ftype 12、pushd 和popd 13...

    如何延时启动一项文件

    附件中的批处理文件实现了对指定文件的延时启动

    经典 批处理 BAT 教程

    第一章 批处理基础 第一节 常用批处理内部命令简介 1、REM 和 :: 2、ECHO 和 @ 3、PAUSE 4、ERRORLEVEL 5、TITLE 6、COLOR 7、mode 配置系统设备 8、GOTO 和 : 9、FIND 10、START 11、assoc 和 ftype ...

    DOS批处理高级教程精选

    二、if…else…条件语句 三、循环语句 四、子程序 五、用ftp命令实现自动下载 六、用7-ZIP实现命令行压缩和解压功能 七、调用VBScript程序 八、将批处理转化为可执行文件 九、时间延迟 1、利用ping命令延时 2、利用...

    DOS批处理高级教程精选合编

    第一章 批处理基础 第一节 常用批处理内部命令简介 1、REM 和 :: 2、ECHO 和 @ 3、PAUSE 4、ERRORLEVEL 5、TITLE 6、COLOR 7、mode 配置系统设备 8、GOTO 和 : 9、FIND 10、START 11、assoc 和 ftype ...

    批处理相关资料

    批处理相关资料,for循环,延时,比较杂

    批处理实用教程

    第一章 批处理基础 第一节 常用批处理内部命令简介 1、REM 和 :: 2、ECHO 和 @ 3、PAUSE 暂停 4、ERRORLEVEL 5、TITLE 设置cmd窗口的标题 6、COLOR 设置cmd窗口前景和背景颜色 7、mode 配置系统设备 8、...

Global site tag (gtag.js) - Google Analytics