[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. @echo off & setlocal enabledelayedexpansion
  2. set "list=jpg pdf"
  3. if not exist "%~dp0Backup" (mkdir "%~dp0Backup")
  4. for /f "tokens=3 delims=/ " %%i in ("!date!") do (set "today_date=%%i")
  5. for /f "tokens=1,2,3 delims=/ " %%i in ("!date!") do (set "new_name=%%j%%k%%i")
  6. for /f "skip=4 tokens=1,4,* delims= " %%a in ('dir /od') do (
  7. for /f "tokens=3 delims=/" %%i in ("%%a") do (set "file_date=%%i")
  8. if "!file_date!" equ "!today_date!" (
  9. for /f "delims=" %%i in ("%%b %%c") do (
  10. for %%f in (!list!) do (
  11. if "%%~xi" equ ".%%f" (
  12. copy /y "%%i" "%~dp0Backup" >nul && ren "%~dp0Backup\%%i" "%%~ni_!new_name!%%~xi"
  13. )
  14. )
  15. )
  16. )
  17. )
  18. pause
复制代码
仅支持备份Bat程序当前位置中指定类型的文件
1

评分人数

TOP

回复 7# jave000


    已优化:
  1. @echo off & setlocal enabledelayedexpansion
  2. set "list=jpg pdf"
  3. if not exist "%~dp0Backup" (mkdir "%~dp0Backup")
  4. for /f "tokens=1,2,3 delims=/ " %%i in ("!date!") do (set "today_date=%%k" & set "new_name=%%j%%k%%i")
  5. for /f "skip=4 tokens=1,4,* delims= " %%a in ('dir /od') do (
  6. for /f "tokens=3 delims=/" %%i in ("%%a") do (set "file_date=%%i")
  7. if "!file_date!" equ "!today_date!" (
  8. for /f "delims=" %%i in ("%%b %%c") do (
  9. for %%f in (!list!) do (
  10. if "%%~xi" equ ".%%f" (
  11. if not exist "%~dp0Backup\%%~ni_!new_name!%%~xi" (
  12. copy /y "%%i" "%~dp0Backup" >nul && echo 备份 %%i 成功^^!
  13. ren "%~dp0Backup\%%i" "%%~ni_!new_name!%%~xi" && echo 重命名 %%i -^> %%~ni_!new_name!%%~xi 成功^^!
  14. ) else (echo %%~ni_!new_name!%%~xi 已存在,备份失败^^!)
  15. )
  16. )
  17. )
  18. )
  19. )
  20. pause
复制代码
如出现乱码,请将Bat程序的编码格式修改为ANSI
1

评分人数

TOP

返回列表