使用 YYYYMMDD 日期作为文件夹名称在多个目录中创建文件夹的脚本

6 windows file-management batch

每天早上上班时,我必须YYYYMMDD在我们网络的各个部门的不同目录中创建多个文件夹(使用日期格式作为文件夹名称)。这是一个真正的痛苦和浪费时间,我想自动化这个过程。所以我的问题是:

有谁知道我如何编写一个使用当前系统日期YYYYMMDD格式的脚本,并在不同的网络目录中创建多个文件夹,每个文件夹以YYYYMMDD格式命名为日期?

预先感谢您的回答。

Sna*_*ark 9

创建一个如下所示的批处理文件:

@echo off
for /F "tokens=2-4 delims=/ " %%i in ('date /t') do set yyyymmdd=%%k%%j%%i
echo Date: %yyyymmdd%

mkdir \\server1\share1\subdir1\%yyyymmdd%
mkdir \\server1\share2\subdir2\%yyyymmdd%
mkdir \\server2\share3\subdir3\%yyyymmdd%
...
Run Code Online (Sandbox Code Playgroud)

警告:日期的格式 ( yyyymmdd=%%k%%j%%i ) 取决于您的区域设置。因为我使用的是法语日期格式 (dd/mm/yyyy),所以我必须使用“ %%k%%j%%i ”作为格式(%%i = 日,%%j = 月,%%j =年)。

如果您的区域设置设置为美国样式 (mm/dd/yyyy),您应该使用“ %%k%%i%%j ”(%%i = 月,%%j = 日,%%j = 年) .


如果您还想包括时间,请使用以下命令:

@echo off
for /F "tokens=2-4 delims=/ " %%i in ('date /t') do set yyyymmdd=%%k%%j%%i
echo Date: %yyyymmdd%
for /F "tokens=1-3 delims=: " %%i in ('echo %time%') do set hhmmss=%%i%%j%%k
echo Time: %hhmmss%

mkdir \\server1\share1\subdir1\%yyyymmdd%%hhmmss%
Run Code Online (Sandbox Code Playgroud)

日期存储在变量中%yyyymmdd%,时间存储在%hhmmss%. 与上述日期相同的备注,不适用于时间。

您可以在日期和时间之间使用分隔符:%yyyymmdd%_%hhmmss%例如。