Board logo

标题: [文本处理] 批处理如何自动检索指定目录下的所有文件然后复制到指定地方? [打印本页]

作者: xjmark    时间: 2009-4-11 20:17     标题: 批处理如何自动检索指定目录下的所有文件然后复制到指定地方?

大家好!
我想把E盘的文件、目录及子目录,以及子目录里的所有文件利用批处理复制出来。
如何编写这样的批处理?

@echo off
for /r e:\ %%i in (*) do (copy .\ C:\Documents and Settings\Administrator\桌面)
pause
作者: Batcher    时间: 2009-4-11 20:24

别的先不说,路径有空格时,需要加双引号,这一点几乎在每个批处理基础教程中都会提到。
作者: 随风    时间: 2009-4-11 20:26

把e盘所有文件都复制到桌面?你要想仔细了。。。
:
  1. @echo off
  2. for /r e:\ %%i in (*) do (
  3.   if exist "%%i" (
  4.      copy "%%i" "C:\Documents and Settings\Administrator\桌面"
  5.    )
  6. )
  7. pause
复制代码

作者: 随风    时间: 2009-4-11 20:27

怎么一会功夫就有这么多回帖了?我还以为我是沙发呢。。
作者: xjmark    时间: 2009-4-11 20:46

随风,成功了,谢谢!
唯一不足的是,能不能连同文件夹一起复制!
在线等……
作者: tireless    时间: 2009-4-11 21:02

  1. xcopy e: "C:\Documents and Settings\Administrator\桌面" /eqh
复制代码

作者: Batcher    时间: 2009-4-11 21:54     标题: 回复 6楼 的帖子

建议在顶楼明确支持需要复制文件夹,否则很容易引起他人误解。
作者: xjmark    时间: 2009-4-12 02:02

谢谢各位朋友的帮助,大家所提供的方法都很不错,但我用不上。我是在做数据恢复中,由于E区物理性故障,在DOS下随风所提供的批处理,以及Xcopy我都试过,无法完成复制。英文还好,问题是大多数是汉字,只能用土办法了。谢谢!
作者: Batcher    时间: 2009-4-12 02:20     标题: 回复 10楼 的帖子

DOS下的批处理和Windows下的批处理有着相当大的区别
下次提问建议在顶楼把问题背景描述清楚
否则又会像这个帖子一样浪费大家感情了^_^

如果你在一开始就说清楚是在DOS下使用,说不定早就有人给出方法了。但是现在有能力帮助你解决问题的人,可能已经没有激情和时间来一层楼一层楼地来理解你的问题了。但是我们还是共同期待一下热心人的到来吧:)
作者: yyw    时间: 2009-4-12 16:35

for /r "e:\" %%a in (*.*) do xcopy %%a "C:\Documents and Settings\Administrator\桌面"
路径带有空格要加 ""




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