转自:http://www.cnblogs.com/looky/archive/2010/01/24/1655292.htmlhtml
今天一朋友叫我帮忙解决指定文件批量复制的问题,因而找了一大堆批处理命令,最后终于搞定了这个问题。原理是:结合tree命令生成的文件,再经过批处理命令,分析生成文件中出现的文件名,而后进行批量复制到指定目录。废话很少说,下面是步骤:spa
首先 打开命令行 (WIN+R打开运行对话框,而后输入CMD打开) 这里样假定为 e:\txt 这个文件夹里面文件 命令行
DOS命令行下 输入 :3d
这时将会生成一个文件名为file的文件htm
用记事本打开blog
能够看到txt文件夹下 全部文件的文件名。token
如今咱们编写批处理命令:原理
echo 请确保“保存文件名的文件”file和本程序在同一目录file
set /p lj= 请输入要拷贝到的路径:程序
for /f "tokens=*" %%a in (file) do (
for /f "tokens=*" %%i in ('dir /s/b/a-d %%a') do (
copy "%%~dpnxi" "%lj%"
)
)
将以上命令保存为.bat文件
如今将生成的file 文件 和 copyfile.bat文件一块儿复制到txt目录下
在这里咱们能够直接双击bat文件 执行批处理程序
回车完 命令一闪而过 :最后咱们在abc文件夹下找到了 txt文件夹中被复制过去的文件
为了更清楚的看到执行过程 咱们能够在DOS命令下 执行.bat文件
因为file文件中包含这样的字段:
因此会形成 批处理程序查找 那三行的文件名 若是不存在 则进入下一行 处理的方式的自上而下 一行一行读取文件名