Board logo

标题: [文件操作] 这个BAT代码要怎么改,在名文件名后加上日期时间 [打印本页]

作者: qqhsx    时间: 2021-10-21 20:09     标题: 这个BAT代码要怎么改,在名文件名后加上日期时间

请帮我改下能多实现以下功能
当新的目录中有所列出的文件时,在新目录中复制一份改名,在名文件名后加上日期时间
比如新目录是有A02.txt文件了,就在A02.txt的地复制一份改名 A02日期时间.txt
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=2 delims==" %%i in ('more +26 "%~f0"') do (
  4.         set /a n+=1
  5.         if !n!==1 call set 原目录=%%i
  6. if !n!==2 call set 新目录=%%i
  7. )
  8. rem echo 获取当前日期字符串
  9. for /f "tokens=1,2,3 delims=/- " %%a in ("%date%") do @set D=%%a%%b%%c
  10. rem echo 获取当前时间字符串
  11. for /f "tokens=1,2,3 delims=:." %%a in ("%time%") do @set T=%%a%%b%%c
  12. rem echo 如当前小时小于10,将空格替换为0
  13. set T=%T: =0%
  14. rem echo 显示输出日期时间字符串
  15. :: echo %D%%T%
  16. for /f "delims=" %%a in ('more +30 "%~f0"') do (
  17.     for /f "delims=" %%i in ('dir /a-d /s /b "%原目录%\%%a"^|^|echo;%%a^>^>未找到的文件.txt') do copy /y "%%~fi" %新目录%\
  18. )
  19. pause
  20. :end
  21. ::以下设置需要同步的两个目录::
  22. 原目录=H:\新建文件夹\A
  23. 新目录=H:\新建文件夹\B
  24. ::以下填入需要同步的文件名::
  25. A01.txt
  26. A02.txt
  27. A03.txt
复制代码

作者: went    时间: 2021-10-21 20:36

第20行改一下
  1. copy /y "%%~fi" "%新目录%\%%~na-%D%%T%%%~xa"
复制代码

作者: qqhsx    时间: 2021-10-21 20:40

回复 2# went


    在哪个位置添加
作者: qqhsx    时间: 2021-10-21 20:44

回复 2# went


    我是要在原功能不变的基础添加上这个功能
作者: went    时间: 2021-10-21 20:48

回复 4# qqhsx


    加个if代码
  1. do if exist "%新目录%\%%~nxa" ( copy /y "%%~fi" "%新目录%\%%~na-%D%%T%%%~xa" ) else ( copy /y "%%~fi" "%新目录%\" )
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2