中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-06 23:54
48,040 主题排行 / 350,125 发帖 / 今日 1 篇 / 48,252 会员排行
DOS批处理 & 脚本技术(批处理室) » 如何拷贝所有文件夹中一个最新的文件到其他文件夹?
可打印版本  2,028 / 17
第16楼 whzcy 发表于 2007-12-20 16:34
新手上路 发帖 10 积分 17
高手呀
能不能解释一下每一句的意思呀?
第17楼 chenai79921 发表于 2007-12-20 16:36
初级用户 发帖 48 积分 120
不过就是第2行 ('dir /a-d /b /s "%%a"') 里面要多加个 /od

('dir /a-d /b /s /od "%%a"')这样,,呵呵
第18楼 chenai79921 发表于 2007-12-20 16:48
初级用户 发帖 48 积分 120
第一个for循环找出f:\test\下所有文件夹的名字。/ad 显示目录 /b使用空格式 /s显示文件夹中的文件,,因为这里已经是/AD了所以/S有没有都无所谓,

第二个for循环,第一个for检索出来的文件夹名为%%a,在%%a中搜索文件

/od 为从先到后(修改时间顺序),"%%~dpnxb"该文件夹中文件的绝对路径,其中参数相关说明查看for /?

set scopy="%%~dpnxb" 就是依次把带路径的文件名赋给scopy,按修改时间依次赋给scopy,最后次赋值scopy得到最新的文件,

call copy %%scopy%% D:\ 把找到的文件拷贝到d盘

然后再执行第一个for循环,检索f:\test\下其他文件夹名


for do()里要加call然后再copy,我不知道这是为什么,,望高手指点。
上一页  1 2
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023