批量复制和删除文件有妙招
董师傅茶坊
由于工作的原因,我需要向“h:\test\”文件夹下的每个子文件夹复制一个相同的文件,但如果逐一手工完成的话,不仅非常麻烦,而且也容易出错。其实,我们并不需要去苦苦寻觅那些所谓功能强大的第三方软件,利用“for”命令就可以实现。
这里以Windows Vista系统为例进行说明,其他Windows系统的操作步骤大同小异,例如我们的要求是将“h:\Downloads\Book2.xls”这个文件复制至“h:\test\”下的各个子文件夹中,包括test1、test2、test3…,具体步骤如下:
第1步:打开记事本,手工输入如下代码:
@echo off
for /r %%a in (.) do copy h:\Downloads\Book2.xls %%a
上述代码中的“echo off”表示不显示命令运行的过程,“for /r”后面的“(.)”表示枚举该目录树,当然你也可手工指定相应的目录。
第2步:打开“另存为”对话框,将保存类型设置为“所有文件”,文件名可以随意输入,但扩展名必须为“.cmd”或“.bat”,例如这里输入“test.cmd”,确认后即可。
第3步:打开“运行”对话框,在这里输入“CMD”进入命令提示符,依次进入“h:\test\”路径,这一点至关重要,否则会在当前目录的所有子文件夹下自动复制文件。手工运行“test.cmd”,注意请以绝对路径运行。很快,我们可以看到复制成功的结果,是不是很简单?
如果需要批量删除该文件,可以将上述代码中的第二行语句修改为“for /r %%a in (.) do del %%a\Book2.xls”,仍然按照同样的步骤进行操作,很快就可以将刚才所复制的“book2.xls”全部删除,自然我们还可以更换命令实现其他的任务,感兴趣的朋友不妨一试。