bat打印程序总共执行时长

举报
福州司马懿 发表于 2024/11/19 14:37:38 2024/11/19
【摘要】 在Windows批处理(batch)文件中,我们可以使用%time%变量来打印出程序的执行时间。以下是一些可能的解决方案:解决方案1:在批处理脚本的开始和结束时打印时间。@echo offecho Start Time: %time% :: Your code here timeout /t 10 echo End Time: %time%解决方案2:计算执行时间的差异。@echo offs...

在Windows批处理(batch)文件中,我们可以使用%time%变量来打印出程序的执行时间。

以下是一些可能的解决方案:

解决方案1:在批处理脚本的开始和结束时打印时间。

@echo off
echo Start Time: %time%
 
:: Your code here
 
timeout /t 10
 
echo End Time: %time%

解决方案2:计算执行时间的差异。

@echo off
set start_time=%time%
 
:: Your code here
 
timeout /t 10
 
set end_time=%time%
set /a start_seconds=%start_time:~6,2%*3600 + %start_time:~3,2%*60 + %start_time:~0,2%
set /a end_seconds=%end_time:~6,2%*3600 + %end_time:~3,2%*60 + %end_time:~0,2%
set /a elapsed_seconds=%end_seconds%-%start_seconds%
 
echo Total Elapsed Time: %elapsed_seconds% seconds

注意:上述代码假设执行时间不会跨过午夜(即小时数不会从23变到0)。如果可能发生这种情况,你需要在计算开始和结束时间时考虑这一点。

解决方案3:使用PowerShell命令。

@echo off
powershell -Command "& { $start = Get-Date; Start-Sleep -Seconds 10; $end = Get-Date; $end - $start }"

这个解决方案使用PowerShell的Get-Date命令来获取当前日期和时间,然后使用Start-Sleep命令等待10秒。最后,它计算开始和结束时间的差异。

以上就是一些可能的解决方案。你可以根据你的实际需求选择最适合你的解决方案。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。