Warning: Undefined variable $self_hreflang in /www/wwwroot/www.che0.com/wp-content/themes/huaxia/functions.php on line 2130

Warning: Undefined variable $self_hreflang in /www/wwwroot/www.che0.com/wp-content/themes/huaxia/functions.php on line 2130

Warning: Undefined variable $self_hreflang in /www/wwwroot/www.che0.com/wp-content/themes/huaxia/functions.php on line 2154
正文

bat根据当前日期创建文件夹的方法(批处理命令可按最新日期复制)学到了吗

文章摘要

这篇文章介绍了在Windows系统中使用CMD设置编码格式为UTF-8以防止中文乱码的方法。同时,文章详细讲解了如何提取当前日期的年、月、日,以及时间的小时、分钟、秒和毫秒。提取日期部分时,使用了`%date`命令,并通过指定起始位置和截取长度来获取年、月、日;提取时间部分时,使用了`%time`命令,同样通过指定起始位置和截取长度来获取小时、分钟、秒和毫秒。此外,文章还说明了如何处理小时为个位数的情况(需要在前面补0),并通过环境变量管理这些时间部分。文章的目的是帮助用户准确提取和管理日期和时间信息。

:: 设置CMD显示的编码格式为UTF-8(防止中文乱码) chcp 65001 :: @echo off 表示不回显执行的命令 @echo off ::一定要看下当前日期的格式,不同的windows系统,打印的当前时间格式可能不一样(这样的年月日截取的开始位置就不一样),防止被坑 set ORIGINAL_DATE=%date% echo %ORIGINAL_DATE% :: 日期截取遵从格式 %date:~x,y%,表示从第x位开始,截取y个长度(x,y的起始值为0) :: 可以看到打印出来的当前日期ORIGINAL_DATE:周一 2022/03/21 :: 年份从第3位开始截取4位,月份从第5位开始截取2位,日期从第8位开始截取2位 set YEAR=%date:~3,4% set MONTH=%date:~8,2% set DAY=%date:~11,2% :: 时间截取遵从格式 %time:~x,y%,表示从第x位开始,截取y个长度(x,y的起始值为0) :: 时钟从第0位开始截取2位,分钟从第3位开始截取2位,秒钟从第6位开始截取2位 set HOUR=%time:~0,2% set MINUTE=%time:~3,2% set SECOND=%time:~6,2% :: 毫秒 set MILLISECIOND=%time:~9,2% :: 当时钟小于等于9时,前面有个空格,这时我们少截取一位,从第1位开始截取 set TMP_HOUR=%time:~1,1% set NINE=9 set ZERO=0 :: 处理时钟是个位数的时候前面补上一个0, LEQ表示小于等于 :: if 和 set 一定要在同一行 if %HOUR% LEQ %NINE% set HOUR=%ZERO%%TMP_HOUR% set CURRENT_DATE_TIME_STAMP=%YEAR%%MONTH%%DAY%_%HOUR%%MINUTE%%SECOND%%MILLISECIOND% mkdir %CURRENT_DATE_TIME_STAMP% pause