bat创建以当前日期命名的文件夹

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了bat创建以当前日期命名的文件夹相关的知识,希望对你有一定的参考价值。

如文件夹名:20140219

一、先比较直接的查看当前的日期和时间:(或者cmd中直接输入date,time查看)

@echo off

color 0a

set dt=%date%%time%

echo %dt%

pause

二、使用截取进行命名(时间为12小时制时命名会出现空格,不严谨)

%date:~0,4% :表示从左往右指针偏移0位,然后从偏移的位置进行截取4个字符。如果是从右往左截取,则需要加上负号

@echo off

color 0a

set ymd=%date:~0,4%%date:~5,2%%date:~8,2%

set hms=%time:~0,2%%time:~3,2%%time:~6,2%%time:~9,2%

rem 或者 set hms=%time:~-11,2%%time:~-8,2%%time:~-5,2%%time:~-2,2%

set dt=%ymd%%hms%

echo %dt%

mkdir "%dt%"

pause

三、使用for  /f 来进行命名

eol=/   指以/ 号开头的行为为注释行

tokens=x,y,m-n   指每行的哪一个符号被传递到每个迭代的 for 本身,m-n是格式指的是一个范围

delims=xx   指分隔符集。这个替换了空格和跳格键的默认分隔符集

写法:

@echo off

color 0a

for /f "tokens=1,2 eol=/ delims=/ " %%a in ('date/t') do set yyyy=%%a

for /f "tokens=1,2 eol=/ delims=/" %%a in ('date/t') do set mm=%%b

for /f "tokens=2,3 delims=/ " %%a in ('date/t') do set dd=%%b

set ymd=%yyyy%%mm%%dd%

set tmp_hms=%time:~-11,2%%time:~-8,2%%time:~-5,2%

set hms=%tmp_hms: =%6

set dt=%ymd%%hms%

echo %dt%

mkdir "%dt%"

pause

扩展资料

当时间为12小时制时,以上几种写法会出空格现象,下面将展示一下解决方法:

可以在之前的脚本中加上一句判断

if "%time:~0,1%"==" " set "time=0%time:~1%"

@echo off

color 0a

for /f "tokens=*" %%a in ('time/t') do set now=%%a

set ymd=%date:~0,4%%date:~5,2%%date:~8,2%

set hms=%now:~0,2%%now:~3%%time:~6,2%

set dt=%ymd%%hms%

echo %dt%

pause

参考技术A

1、在当前文件夹内,右击新建》文本文档。

2、打开文本文档,输入MD命令来创建文件夹。

3、这里输入MD aaaa,就是创建aaaa(想要别的文件夹名的可以打上别的名称)文件夹,之间有空间,如果是多个文件夹也是以空格分开。

4、完成后,保存把文件的扩展名txt改成bat。

5、直接双击运行bat文件,完成文件夹的创建。

参考技术B

用bat命令以当前日期为名字建立文件夹:

set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"
md %ymd%
copy /y E:\\Anan\\*.log E:\\Anan\\%ymd%\\

第一句为建立一个变量,并通过%date:~5,2%来组合得出当前日期,组合的效果为yyyymmdd,date命令得到的日期格式默认为yyyy-mm-dd(如果不是此格式可以通过pause命令来暂停命令行窗口看通过%date:~,20%得到的当前计算机日期格式),所以通过%date:~5,2%即可得到日期中的第五个字符开始的两个字符,例如今天为2009-02-05,通过%date:~5,2%则可以得到02。(日期的字符串的下标是从0开始的)
第二句为用MD命令 建立以变量Ymd为名的文件夹
第三句为复制指定的文件到指定的文件夹。

参考技术C md %date:~0,4%%date:~5,2%%date:~8,2%

本回答被提问者采纳
参考技术D 复制粘贴到记事本,另存为xx.bat,编码选ANSI@echo off
rem 创建以当前日期命名的文件夹
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
cd /d "%~dp0"
powershell -NoProfile -ExecutionPolicy bypass "[void](md (get-date).toString('yyyyMMdd') -force)"
:end
echo;%#% +%$%%$%/%@% %z%
pause
exit

bat实例

1.创建以当前时间命名的文件夹

@echo off
echo %date%
set current_date=%date:~0,4%%date:~5,2%%date:~8,2%
set current_time=%time:~0,2%%time:~3,2%%time:~6,2%
set filename=%current_date%%current_time%
echo %filename%
mkdir %filename%

 

以上是关于bat创建以当前日期命名的文件夹的主要内容,如果未能解决你的问题,请参考以下文章

bat自动创建文件夹(以当前时间命名)

bat命令创建以日期为名的文件夹

急!用bat制作批处理文件,复制一个文件到多个以日期命名文件夹下并以“文件夹名+文件本名”的形式重命名

bat脚本实现 按当前日期创建空白文件

VBS获取指定目录下最新文件拷贝然后以当前日期命名

如何用批处理命令创建一个以“日期”+读取粘贴板数据命名的文件夹?