用bat写一个获取当前文件夹下的所有图片和视频文件的创建日期,然后在文件名前面加上一个mv字符,在文件名后面加上创建日期,精确到秒,同时延时1s显示每个步骤的执行情况,
时间: 2023-06-25 11:05:25 浏览: 301
@echo off
setlocal enabledelayedexpansion
echo 获取当前文件夹下的所有图片和视频文件的创建日期...
timeout /t 1
for %%i in (*.jpg *.png *.mp4) do (
set "filename=%%~ni"
set "extension=%%~xi"
set "creationtime=%%~ti"
set "creationtime=!creationtime::=_!"
set "creationtime=!creationtime: =_!"
set "creationtime=!creationtime::-=_!"
echo mv "%%i" "mv!filename!_!creationtime!!extension!"
timeout /t 1
)
echo 执行完毕!
pause>nul
解释说明:
- setlocal enabledelayedexpansion: 开启延迟变量扩展,可以在循环中使用 ! 号来获取变量值。
- for %%i in (*.jpg *.png *.mp4) do: 遍历当前文件夹下的所有.jpg、.png、.mp4文件。
- set "filename=%%~ni": 获取文件名,不包含后缀。
- set "extension=%%~xi": 获取文件后缀。
- set "creationtime=%%~ti": 获取文件创建时间。
- set "creationtime=!creationtime::=_!": 将时间中的 : 替换为 _。
- set "creationtime=!creationtime: =_!": 将时间中的空格替换为 _。
- set "creationtime=!creationtime::-=_!": 将时间中的 - 替换为 _。
- echo mv "%%i" "mv!filename!_!creationtime!!extension!": 输出重命名命令,新文件名为 mv+文件名+创建时间+后缀。
- timeout /t 1: 延时1秒。
- pause>nul: 暂停,防止窗口一闪而过。
阅读全文