bat Windows获取当前时间

文章介绍了在Windows批处理(BAT)脚本中如何根据不同日期格式获取年月日,并提供了自定义日期格式的方法。通过截取%date%环境变量的字符串来实现,例如%date:~3,4%获取四位数的年份。文章还展示了如何去除日期前的星期信息并格式化为yyyy-MM-dd。
摘要由CSDN通过智能技术生成

获取方法差异

获取年月日有可能是这样的:

获取年:yyyy=%date:~,4%
获取月:mm=%date:~5,2%
获取日:day=%date:~8,2% 

有可能是这样的:

获取年:%date:~3,4%
获取月:%date:~8,2%
获取日:%date:~11,2%

为什么大家获取年月日的方法不一样?我们自己应该用哪种方式?

如何根据选择

首先%date:~3,4%怎么理解?表示截取%date%字符串,从index为3开始截取,往后截取4位字符。(index为从0开始)

其次,使用下列命令,查看一下windows时间(%date%):

C:\Users\admin>echo %date%
周三 2023/05/24
C:\Users\admin>

如上,我适用于第二种情况。

可以看到时间前面是有星期的,如果不想要星期,可以通过截取实现(从第四位开始即index为3,往后截取10位):

C:\Users\admin>echo %date:~3,10% 
2023/05/24
C:\Users\admin>

时间格式yyyy/MM/dd不符合要求怎么办?自定义!

截取年份:%date:~3,4%  ---> 2023
截取月份:%date:~8,2%  ---> 05
截取日期:%date:~11,2% ---> 24
自定义时间格式为yyyy-MM-dd:%date:~3,4%-%date:~8,2%-%date:~11,2%

看一下结果:
C:\Users\admin>echo %date:~3,4%-%date:~8,2%-%date:~11,2%
2023-05-24
C:\Users\admin>

使用及测试

一个简单的bat:

@echo off

rem 根据当前日期获取,年月日串
set yyyy=%date:~3,4%
set mm=%date:~8,2%
set day=%date:~11,2% 
set currentDate=%yyyy%-%mm%-%day%

echo %currentDate%

执行结果:

2023-05-24
  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值