Board logo

标题: [文件操作] 批处理如何将多个mp3文件平均分配复制到多个文件夹? [打印本页]

作者: prince577    时间: 2010-12-7 15:12     标题: 批处理如何将多个mp3文件平均分配复制到多个文件夹?

如何将在一个文件夹里多个文件平均分配复制到其他多个文件夹里
例如: 在一个文件夹里有5566.mp3和7788.mp3我需要把这两个文件平均分配复制到001文件夹和002文件夹里,也就是说复制完后001文件夹里只有5566.mp3,而002文件夹里只有7788.mp3,我试过“文件批量复制工具” 但是那个工具是同时复制多个文件到多个文件夹里,每个文件夹里都有多个文件,但不能将文件平均分配到每个文件夹,所以并不是我想要的将多个文件平均分配复制到每个文件夹里!
   如果没有这种软件 就请教我如何使用批处理命令,希望高手指点,我将万分感激!谢谢!
作者: hanyeguxing    时间: 2010-12-7 18:24

  1. @echo off&setlocal enabledelayedexpansion
  2. for /f "delims=" %%i in ('dir /b/a:d "d:\目标文件夹"') do set/a a+=1&set "#!a!=%%~fi"
  3. for /f "delims=" %%i in ('dir /b/a:-d "e:\有mp3的文件夹\*.mp3"') do (
  4.     set/a b+=1,"c=b%%a+^!(b%%a)*a"
  5.     for %%j in (!c!) do copy "%%~fi" "!#%%j!"
  6. )
复制代码

如果不涉及子目录和属性等问题,则:
  1. @echo off&setlocal enabledelayedexpansion
  2. for /d %%i in ("d:\目标文件夹\*") do set/a a+=1&set "#!a!=%%~fi"
  3. for %%i in ("e:\有mp3的文件夹\*.mp3") do (
  4.     set/a b+=1,"c=b%%a+^!(b%%a)*a"
  5.     for %%j in (!c!) do copy "%%~fi" "!#%%j!"
  6. )
复制代码

[ 本帖最后由 hanyeguxing 于 2010-12-7 18:28 编辑 ]
作者: prince577    时间: 2010-12-7 21:22

首先非常谢谢这位高手的指教......但是这代码给我了我现在也不会用啊(别骂我哈) 我还没触及过代码领域...所以还请进一步的说明一下这代码是怎么用的,有没有速成地方法教我一下?! 要是没有我就从零开始学学.....
作者: hanyeguxing    时间: 2010-12-7 21:49     标题: 回复 3楼 的帖子

你要把这些mp复制到哪,就把 d:\目标文件夹\ 改成那个路径。
你的mp3在哪个文件夹里,就把 e:\有mp3的文件夹 改成那个路径
作者: yynxbaobao    时间: 2010-12-7 22:01

我觉得很麻烦,既然只能分别复制一首歌,那你直接手动就行了。这样你还得设置下路径和歌曲名称,不觉得是多此一举吗?
作者: prince577    时间: 2010-12-7 22:31

嗯 好的  非常感谢你的指点!
作者: wc726842270    时间: 2010-12-7 23:51     标题: 回复 3楼 的帖子

不管怎么样你都得知道DOS的命令啊,只要知道大概就可以 了,不会了,可以到CMD下查




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