用bat复制指定文件到指定文件目录下的所有文件夹?

比如D盘里3个文件夹,分别为1、2、3.现在桌面上有一个123.txt文件。

现在我自己做一个bat,使其内容是将桌面上的123.txt复制到D盘的3个文件夹中,请问应该如何写代码?

不要以下代码:
@echo off
copy 123.txt D:\1\
copy 123.txt D:\2\
copy 123.txt D:\3\

因为上面那种代码必须写指定的文件夹名,我想让123.txt复制到D盘目录下的所有文件夹,而且还要是在不知道文件夹名的情况下.(这句是废话.~)

这网上看到过这样的:
for /r 目标文件夹 %%a in (.) do (
cd /d %%a
copy /y 目标文件 .
)
pause

可是上面那种也不行,还是需要文件夹名.请各位告诉帮帮我吧.~
可以用的一定追加分数......
1楼的,我试了你的方法。
可以用耶,但是可不可以麻烦你解释一下意思啊。?

实现此功能,使用批处理中的FOR命令即可。


方法如下:
1、首先新建一个扩展名为.BAT的文本文档。

2、将如下内容复制到文本文档内:
  for /r d:\ %%i in (*.exe) do copy %%i c:\1


3、保存,双击执行即可。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-25
::确认无误后去掉echo即可。
::解释:
::for /f句型——(详见for /?)
::FOR /F ["options"] %variable IN ('command') DO command [command-parameters]
::delims=表示不以空格为间隔
::dir /b/ad/s d:表示列举d盘所有目录

for /f "delims=" %%a in ('dir /b/ad/s d:') do echo copy 123.txt "%%a"本回答被提问者采纳
第2个回答  2008-02-20
比如说D:\下有1,2,3,4,5,6,7,8,9,10这十个文件夹
for /L %%i (1,1,10) do copy 123.txt "D:\%%i"
第3个回答  2012-05-10
你们傻啊,他说不要填写123.txt ,复制到D盘 可以用通配符