标题:把一个文件拷贝到很多的文件夹(规律)
作者:beyoungse | 时间:2007-01-04 00:52 | 标题:把一个文件拷贝到很多的文件夹(规律)
把bak这个文件夹拷贝到如 a001 a002 ……a009……a010……a100文件夹中
作者:beyoungse | 时间:2007-01-04 00:52
求教各位大侠啦
作者:namejm | 时间:2007-01-04 00:57
@echo off
for /l %%i in (1,1,100) do call :copy_ %%i
goto :eof
:copy_
set num=00%1
set name=a%num:~-3%
copy bak %name%
goto :eof
作者:flamey | 时间:2007-01-04 04:08
楼上的批处理中copy bak %name%这行有点问题,如果我这个目录本来没有这些文件夹的时候就会出错!
作者:namejm | 时间:2007-01-04 04:16
楼主并没有特别说明这些文件夹是否存在,按照一般的理解,默认是存在的;如果不存在,那只能怪楼主交代不清;对于模糊不清的问题,无论是谁,都不可能解决得尽善尽美。
作者:beyoungse | 时间:2007-01-04 23:56
不好意思,我是新人,在实际的应用上想省点事情,就来请教大侠,
我问题时没有考虑太多,不好意思
作者:beyoungse | 时间:2007-01-05 00:09
@echo off
for /l %%i in (1,1,100) do call :copy_ %%i
goto :eof
:copy_
set num=00%1
set name=a%num:~-3%
copy bak %name%
goto :eof
我试过了,可是目标都成了文件,而不是文件夹
我的目的是把BAK这个文件夹拷贝到已经存在的文件夹中(a001,a002 ……a100这些目录是已经存在的文件夹)
作者:namejm | 时间:2007-01-05 01:49
呵呵,没仔细看题目,以为bak是文件,失误。复制文件夹应该把 copy 换成 xcopy,再加上适当的参数。
作者:beyoungse | 时间:2007-01-05 04:35 | 标题:再问题 拷贝 Documents and Settings 文件夹
把 Documents and Settings 这个文件来 拷贝到A001,A002,A003……A110文件夹中
[ Last edited by beyoungse on 2007-1-7 at 12:33 PM ]
作者:beyoungse | 时间:2007-01-07 12:35 | 标题:我拷贝不了
把 Documents and Settings 这个文件来 拷贝到A001,A002,A003……A110文件夹中
作者:dikex | 时间:2007-01-07 12:48
Documents and Settings\%username%\文件夹里面的NTUSER和NTUSER.DAT文件是注册表相关的文件,正常情况下是无法复制的
作者:beyoungse | 时间:2007-01-07 12:55
这个文件夹是我自己建立的,里面只存在我自己建立的几个文件
老大帮帮我
作者:beyoungse | 时间:2007-01-07 12:56
我的目的是把用户桌面放在一个文件服务器上的,用户的系统是只读的
作者:dikex | 时间:2007-01-07 13:02
复制时用""括住路径即可正常复制
作者:beyoungse | 时间:2007-01-07 13:10
你能不能帮我写一下呢,是在当前目录操作,不用写路径吧?
我用上面的批处理,
@echo off
for /l %%i in (1,1,100) do call :copy_ %%i
goto :eof
:copy_
set num=00%1
set name=a%num:~-3%
copy Documents and Settings %name%
goto :eof
作者:beyoungse | 时间:2007-01-07 13:15
我把 copy 换成了 xcopy /i /s/e
作者:dikex | 时间:2007-01-07 13:17
xcopy /i /s /e "Documents and Settings" "%name%"
作者:beyoungse | 时间:2007-01-07 13:21 | 标题:每个循环出错
C:\Documents and Settings\MM\test>copy.bat
C:\Documents and Settings\MM\test>for /L %i in (1 1 10) do call :copy_ %i
C:\Documents and Settings\MM\test>call :copy_ 1
C:\Documents and Settings\MM\test>set num=001
C:\Documents and Settings\MM\test>set name=a001
C:\Documents and Settings\MM\test>xcopy /i /s/e C:\Documents and Settings\MM\test\D
ocuments and Settings\ a001
无效的参数数量
……
……
……
作者:dikex | 时间:2007-01-07 13:25
看清楚17楼,路径是被双引号包住的……
作者:beyoungse | 时间:2007-01-07 13:33 | 标题:问题解决,谢谢
@echo off
for /l %%i in (1,1,100) do call :copy_ %%i
goto :eof
:copy_
set num=00%1
set name=a%num:~-3%
xcopy /I /e/s "Documents and Settings" %name%
goto :eof
作者:jmz573515 | 时间:2007-03-14 08:02
为了学习,难免有错,谢谢指正!
@echo off
setlocal EnableDelayedExpansion
for /l %%a in (1,1,100) do (
set a=00%%a
@echo bak !a:~-3!
)
pause>nul
作者:handan | 时间:2007-11-24 15:04
我刚开始学习批处理 我是这样想的
千万别笑话呀
@echo off & setlocal EnableDelayedExpansion
set var=000
for /l %%i in (1 1 100) do (
set var=%var%%%i
set var=!var:~-3!
if not exist a!var! md a!var!
copy bak a!var!
)
pause
来源:https://www.cn-dos.net/forum/viewthread.php?tid=26303 · 打印时间 2026-06-14 20:52