bat按日期创建文件夹
时间: 2023-08-30 14:01:07 浏览: 2196
想要使用bat批处理命令按日期创建文件夹,可以按照以下步骤操作。
首先,需要使用系统内置的日期时间变量%date%来获取当前的系统日期。然后将日期转换为特定的格式,例如"YYYY-MM-DD"。
接下来,可以使用mkdir命令来创建文件夹。在命令后面加上要创建的文件夹名称的变量,例如"mkdir %foldername%"。
最后,在将日期转换为特定格式后,将其作为文件夹名称的变量传递给mkdir命令,即"mkdir %datefolder%"。
以下是一个示例的bat脚本代码:
```
@echo off
set foldername=%date:~0,4%-%date:~5,2%-%date:~8,2%
mkdir %foldername%
```
以上代码将创建一个以当前日期命名的文件夹,文件夹名称的格式为"YYYY-MM-DD"。
这样,每次运行该bat脚本,都会在指定路径下创建一个新的以日期命名的文件夹。
相关问题
bat获取文件夹下的所有文件日期并创建对应日期的文件夹
可以使用以下的 BAT 脚本来实现:
```
@echo off
setlocal enabledelayedexpansion
set source_dir=C:\source_dir
set target_dir=C:\target_dir
for /f "delims=" %%i in ('dir /b /a-d "%source_dir%"') do (
set file=%%i
for /f "usebackq" %%j in ('wmic datafile where name^="%source_dir%\!file!" get lastmodified ^| find "."') do (
set datetime=%%j
set date=!datetime:~0,4!-!datetime:~4,2!-!datetime:~6,2!
if not exist "%target_dir%\!date!\" md "%target_dir%\!date!\"
move "%source_dir%\!file!" "%target_dir%\!date!\"
)
)
echo Done.
```
在脚本中,`source_dir` 是需要处理的文件夹路径,`target_dir` 是需要创建日期文件夹的目标文件夹路径。
首先,使用 `for` 循环遍历目标文件夹下的所有文件,然后使用 `wmic` 命令获取文件的最后修改时间。接着,使用字符串截取方法将时间转换为日期格式,然后使用 `if not exist` 命令创建对应日期的文件夹。最后,使用 `move` 命令将文件移动到对应的日期文件夹中。
注意,在 BAT 脚本中,需要使用 `setlocal enabledelayedexpansion` 命令来启用延迟环境变量扩展,以便在循环中使用 `!` 来引用变量。
bat获取文件夹路径,并对该文件夹下所有文件日期并创建对应日期的文件夹
可以使用以下的 BAT 脚本来实现:
```
@echo off
setlocal enabledelayedexpansion
set source_dir=%~1
set target_dir=C:\target_dir
for /f "delims=" %%i in ('dir /b /a-d "%source_dir%"') do (
set file=%%i
for /f "usebackq" %%j in ('wmic datafile where name^="%source_dir%\!file!" get lastmodified ^| find "."') do (
set datetime=%%j
set date=!datetime:~0,4!-!datetime:~4,2!-!datetime:~6,2!
if not exist "%target_dir%\!date!\" md "%target_dir%\!date!\"
move "%source_dir%\!file!" "%target_dir%\!date!\"
)
)
echo Done.
```
在脚本中,`source_dir` 是通过命令行参数传入的需要处理的文件夹路径,`target_dir` 是需要创建日期文件夹的目标文件夹路径。
首先,使用 `for` 循环遍历目标文件夹下的所有文件,然后使用 `wmic` 命令获取文件的最后修改时间。接着,使用字符串截取方法将时间转换为日期格式,然后使用 `if not exist` 命令创建对应日期的文件夹。最后,使用 `move` 命令将文件移动到对应的日期文件夹中。
注意,在 BAT 脚本中,需要使用 `%~1` 来获取命令行参数,并且需要使用 `setlocal enabledelayedexpansion` 命令来启用延迟环境变量扩展,以便在循环中使用 `!` 来引用变量。
阅读全文