Board logo

标题: [文件操作] bat获取目录名称和文件名称相等就只cp文件名到相等的目录下 [打印本页]

作者: xxlaila    时间: 2015-6-6 10:50     标题: bat获取目录名称和文件名称相等就只cp文件名到相等的目录下

我a目录下面有 1 2 3 4 5 几个目录 让我从test目录获取的文件名 等于 我从a目录下获取的目录名 就吧这个文件copy过去,
例如,在test目录下面获取的是文件名是2  在a目录下找到目录2  就吧2文件cp到a\2 目录下
作者: bailong360    时间: 2015-6-6 12:46

  1. @echo off
  2. for /f "delims=" %%i in ('dir /a-d /b D:\test') do (
  3.     if exist "C:\a\%%~nxi" (
  4.         copy "%%i" "C:\a\%%~nxi\"
  5.     )
  6. )
复制代码

作者: xxlaila    时间: 2015-6-6 13:43

回复 2# bailong360


文件我已经提取出来了是3  但是不知道怎么吧这个3的文件 怎么判断复制到 d:\a\3目录下面
作者: xxlaila    时间: 2015-6-6 15:06

  1. @echo off
  2. echo.
  3. echo.=====================================================================
  4. Setlocal Enabledelayedexpansion
  5. set FolderName=D:\WwwRoot\FTP
  6. for /f "delims=" %%a in ('dir /b /a-d /oN "%FolderName%\*.*"') do (
  7. set d=%%a
  8. set c=!d:~0,-4!
  9. echo !c!
  10. )
  11. echo.
  12. echo.=====================================================================
  13. set PathName=d:\test
  14. set b=3
  15. echo %PathName%\%b%\News\
  16. echo %b%
  17. if exist "%b%" (
  18. echo 0
  19. if "%c%" == "%b%" (
  20. xcopy /e /y %FolderName%\*.* %PathName%\%b%\News\
  21. echo 文件复制成功!
  22. ) else (
  23. echo 1
  24. goto loop
  25. )
  26. ) else (
  27. echo 1
  28. goto loop
  29. )
  30. echo.=====================================================================
  31. :loop
  32. pause
复制代码
我在FTP目录下找到了3.txt文件然后去掉了.txt 显示为3 然后去判断如果3 ==3 就执行 CP到test目录3目录下面News目录中




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