bat根据当前日期创建文件夹的方法

2023-12-08 0 1,079

为了不等路也能复制copy,所以编辑博客的时候这个没有放到代码块里,也黏贴下:: 设置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=9set 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

:: 设置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

bat根据当前日期创建文件夹的方法

补充:bat根据当前时间生成文件名称

rem 根据当前日期获取,年月日串
set yyyy=%date:~,4%
set mm=%date:~5,2%
set day=%date:~8,2% 
set \”YYYYmmdd=%yyyy%%mm%%day%\”
rem 把年月日串中的空格替换为0
set \”YYYYmmdd=%YYYYmmdd: =0%\”
echo \”YYYYmmdd%YYYYmmdd%YYYYmmdd\”
rem 根据当前时间获取,时分秒串
set hh=%time:~0,2%
set mi=%time:~3,2%
set ss=%time:~6,2% 
set \”hhmiss=%hh%%mi%%ss%\”
set \”hhmiss=%hhmiss: =0%\”
echo \”hhmiss%Time%hhmiss\”
echo %hhmiss%
rem 把时间串中的:替换为0
set \”hhmiss=%hhmiss::=0%\”
rem 把时间串中的空格替换为0
set \”hhmiss=%hhmiss: =0%\”
rem 根据日期时间生成文件名称,中间以HH区分日期和时间部分
set \”filename=%YYYYmmdd%HH%hhmiss%.rar\”
echo %filename%
pause 
echo 根据当前日期时间,生成文件名称,……
set YYYYmmdd=%date:~0,4%%date:~5,2%%date:~8,2%
set hhmiss=%time:~0,2%%time:~3,2%%time:~6,2%
set \”filename=WebSite3copy%YYYYmmdd%_%hhmiss%.zip\”
echo %filename%

参考

bat 获取文件的创建时间_详解Windows下获取时间bat脚本总结,值得收藏

用BAT创建文件夹,创建文件,回显环境变量

到此这篇关于bat根据当前日期创建文件夹的文章就介绍到这了,更多相关bat根据日期创建文件夹内容请搜索悠久资源网以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源网!

您可能感兴趣的文章:

  • 用BAT创建文件夹文件及回显环境变量的问题
  • Windows环境bat脚本获取文件的创建时间

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 DOS/BAT bat根据当前日期创建文件夹的方法 https://www.u-9.cn/jiaoben/dosbat/131181.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务