Board logo

标题: [文本处理] 【已解决】批处理:批量替换特定文件夹内的内容 [打印本页]

作者: 思想之翼    时间: 2014-7-24 19:12     标题: 【已解决】批处理:批量替换特定文件夹内的内容

C盘根目录有一命名为“数据”的文件夹,其内有12个子文件夹,分别命名为“文件1”、“文件2”...“文件12 ”,
这12个子文件夹内各有210个子文件夹,分别命名为001 002...210,
这210个子文件夹内各有一命名为Data的子文件夹,
即共有2520个“Data”文件夹。
现在,C盘根目录有一命名为“Data”的文件夹,欲用该“Data” 内的内容,替换上述2520个“Data” 内的内容 (即:先删除2520个“Data” 内的内容,再写入C盘根目录“Data” 内的内容)。这样的批处理如何写?
注:“Data” 内的文件,名称相同。

自己写了一个替换代码,只替换“文件1”中“001"里的"Data",但不知道如何加一个循环,替换其余2519个。
  1. @echo off                        
  2. type c:\data\0-texts.cs>c:\数据\文件1\001\data\0-texts.cs  
  3. type c:\data\1-texts.cs>c:\数据\文件1\001\data\1-texts.cs
  4. type c:\data\2-texts.cs>c:\数据\文件1\001\data\2-texts.cs   
  5. type c:\data\3-texts.cs>c:\数据\文件1\001\data\3-texts.cs  
  6. type c:\data\4-texts.cs>c:\数据\文件1\001\data\4-texts.cs  
  7. type c:\data\5-texts.cs>c:\数据\文件1\001\data\5-texts.cs  
  8. type c:\data\6-texts.cs>c:\数据\文件1\001\data\6-texts.cs  
  9. type c:\data\7-texts.cs>c:\数据\文件1\001\data\7-texts.cs
  10. type c:\data\8-texts.cs>c:\数据\文件1\001\data\8-texts.cs  
  11. type c:\data\9-texts.cs>c:\数据\文件1\001\data\9-texts.cs  
  12. type c:\data\10-texts.cs>c:\数据\文件1\001\data\10-texts.cs
  13. type c:\data\11-texts.cs>c:\数据\文件1\001\data\11-texts.cs
  14. type c:\data\12-texts.cs>c:\数据\文件1\001\data\12-texts.cs  
  15. type c:\data\13-texts.cs>c:\数据\文件1\001\data\13-texts.cs
  16. type c:\data\14-texts.cs>c:\数据\文件1\001\data\14-texts.cs
  17. type c:\data\15-texts.cs>c:\数据\文件1\001\data\15-texts.cs
  18. type c:\data\16-texts.cs>c:\数据\文件1\001\data\16-texts.cs
  19. type c:\data\17-texts.cs>c:\数据\文件1\001\data\17-texts.cs
  20. type c:\data\18-texts.cs>c:\数据\文件1\001\data\18-texts.cs
  21. type c:\data\19-texts.cs>c:\数据\文件1\001\data\19-texts.cs
  22. type c:\data\20-texts.cs>c:\数据\文件1\001\data\20-texts.cs
  23. type c:\data\21-texts.cs>c:\数据\文件1\001\data\21-texts.cs
  24. type c:\data\22-texts.cs>c:\数据\文件1\001\data\22-texts.cs
  25. type c:\data\23-texts.cs>c:\数据\文件1\001\data\23-texts.cs
  26. type c:\data\24-texts.cs>c:\数据\文件1\001\data\24-texts.cs
  27. type c:\data\2011ALD-qc.txt>c:\数据\文件1\001\data\2011ALD-qc.txt
  28. exit
复制代码

作者: apang    时间: 2014-7-24 20:11

  1. @echo off
  2. for /f "delims=" %%a in ('dir /ad /b /s "C:\数据\data"') do (
  3.     rd /s /q "%%a"
  4.     xcopy /s /h /y "C:\data\*" "%%~dpa\data\"
  5. )
  6. pause
复制代码

作者: CrLf    时间: 2014-7-24 21:15

xcopy /s /h /y "C:\data\*" "%%~dpa\data" 可以简化成 xcopy /s /h /y "C:\data" "%%~dpa\",不过效率应该差不多...




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