bat脚本计时器,bat设置等待时间bat等待几秒

bat脚本计时器,bat设置等待时间

1、前言

bat设置等待时间的方法挺多的,查了一下也有比较简单的,如向本地ip发包。但是发现这个时间不太精确,所以自己写了一个bat脚本计时器,可以自己设置等待时间,这样在编写bat脚本的时候非常方便的去设置一个代码执行的等待时间。

思路:获取本地系统的时间(秒),通过操作本地时间(秒)实时输出时间差来达到一个等待的目的。

2、问题

编写完成后遇到两个问题:

  • 能力所限解决不了这两个问题;
  • 非常欢迎各位大哥留言,希望提供一些建议,非常感谢;
  1. 获取系统时间:时间/秒==0时,第0秒对应的等待时间显示:ECHO 处于关闭状态,预期结果应该是打印此刻对应的时间;
  2. 获取系统时间:7s < 时间/秒 < 10s时,有错误信息提示,提示内容是:无效数字。数字常数只能是十进制(17),十六进制(0x11)或八进制(021);

3、脚本内容

::bat计时器,设置等待n秒再执行下面命令
:: 设置打印关闭
@echo off
::设置等待时长(计时器长度/秒),需要自己配置
set /a waitTime=120

::计时器内容如下:
set /a getSysS=%time:~6,2%
set /a count=0
set /a judge=-1
set /a remS=-1
::开始
:start
set /a saveSysS=%time:~6,2%
set /a countS=60*%count%+%saveSysS%
set /a showS=%countS%-%getSysS%
if %saveSysS% equ 0 (
	if %judge% equ 1 (
		set /a count=%count%+1
		if %remS% neq %showS% (
			cls
			set /a showS1=%remS%+1
			echo %showS1%
			set /a remS=%showS%
		)
		set /a judge=0
	)
) else (
	if %saveSysS% equ 59 (
		set /a judge=1
	)
	if %remS% neq %showS% (
		if %saveSysS% equ 0 (
			cls
			set /a showS1=%remS%+1
			echo %showS1%
		) else (
			cls
			echo %showS%
		)
		set /a remS=%showS%
	)
)
::超时结束计时器
if %showS% lss %waitTime% (
	goto start
)
pause

4、结尾

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Windows的.bat脚本中,可以使用以下方法来实现等待几秒钟的功能: 1. 使用ping命令:可以通过向本地IP地址发送ping命令来实现等待。例如,要等待5秒钟,可以使用以下命令: ping 127.0.0.1 -n 6 >nul 这里的"-n 6"表示发送6个ping请求,因为ping命令默认每秒发送一个请求,所以等待时间为5秒钟。 2. 使用timeout命令:timeout命令可以在指定的时间内暂停脚本的执行。例如,要等待5秒钟,可以使用以下命令: timeout /t 5 >nul 这里的"/t 5"表示等待5秒钟。 3. 使用自定义的计时器:你也可以编写自己的计时器脚本来实现等待功能。例如,你可以使用以下脚本等待5秒钟: @echo off setlocal set waitTime=5 set startTime=%time% :loop set currentTime=%time% set /a elapsedTime=(1%currentTime:~6,2%-100)*3600*100+(1%currentTime:~9,2%-100)*60*100+(1%currentTime:~12,2%-100)*100+(1%currentTime:~15,2%-100) set /a diffTime=%elapsedTime%-%startTime% if %diffTime% lss 0 set /a diffTime+=24*3600*100 if %diffTime% lss %waitTime% goto loop endlocal 这个脚本会不断获取当前时间,并计算与开始时间的差值,直到差值达到指定的等待时间为止。 以上是几种常见的在.bat脚本中实现等待几秒钟的方法。你可以根据自己的需求选择其中一种方法来使用。 #### 引用[.reference_title] - *1* [bat脚本计时器bat设置等待时间bat等待几秒](https://blog.csdn.net/weixin_46003828/article/details/108563753)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [.bat脚本基本命令语法](https://blog.csdn.net/Soliloquy_XD/article/details/96752940)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值