中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-08 12:17
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何读取一个文本,通过里面的文件路径执行copy操作? 查看 793 回复 6
楼 主 如何读取一个文本,通过里面的文件路径执行copy操作? 发表于 2008-05-12 10:21 ·  中国 广东 深圳 龙岗区 电信
初级用户
积分 72
发帖 28
注册 2008-04-17 15:33
18年会员
UID 116157
性别 男
状态 离线
现在有个文本文件filelist.txt,里面内容是:
d:\test\1\name.htm
d:\test\pic.html
d:\eg\2.txt
....
我想通过一个批处理读取文本filelist.txt,将上面这些文件拷贝到另一个路径f:\res\下,
请问该怎么写?
谢啦!
2 发表于 2008-05-12 10:40 ·  中国 广东 肇庆 电信
中级用户
★★
积分 206
发帖 103
注册 2008-05-06 16:59
18年会员
UID 117911
性别 男
来自 广东 肇庆
状态 离线
for /f %%a in ('type filelist.txt') do copy %%a f:\res\
3 发表于 2008-05-12 10:57 ·  中国 广东 深圳 龙岗区 电信
初级用户
积分 72
发帖 28
注册 2008-04-17 15:33
18年会员
UID 116157
性别 男
状态 离线
谢谢,每行都是一个文件路径可以,如果有一行是一个文件夹路径:
D:\test\Tcmd\a\1.txt
D:\test\Tcmd\b
就不行了,不知道可否做到把这个文件夹b下的所有东西也拷贝?thanks
4 发表于 2008-05-12 11:02 ·  中国 江苏 苏州 吴江区 电信
银牌会员
★★★
积分 1,608
发帖 780
注册 2007-10-07 10:19
18年会员
UID 99089
性别 男
状态 离线
试试这个

for /f %%a in ('type filelist.txt') do copy %%a f:\res\ || xcopy %%a f:\res\
5 发表于 2008-05-12 11:06 ·  中国 广东 深圳 龙岗区 电信
初级用户
积分 72
发帖 28
注册 2008-04-17 15:33
18年会员
UID 116157
性别 男
状态 离线
对了,假如文本里面是:
D:\test\Tcmd\
D:\test\Tcmd\a\
D:\test\Tcmd\a\1.txt
D:\test\Tcmd\a\2.txt
可否在拷贝到f:\res\后,有新的路径和文件:
f:\res\Tcmd\a\1.txt
f:\res\Tcmd\a\2.txt
在上面的批处理中只有新的文件,并没有路径,是我刚才没有考虑到,谢谢
6 发表于 2008-05-12 11:11 ·  中国 广东 深圳 龙岗区 电信
初级用户
积分 72
发帖 28
注册 2008-04-17 15:33
18年会员
UID 116157
性别 男
状态 离线
4楼的不行,但按照这个思路改成下面的话不能拷贝相关文件夹
for /f %%a in ('type filelist.txt') do xcopy %%a f:\res\ /s/y
我想要把下面内容从文件到上级目录都拷贝过去:
D:\test\Tcmd\a\1.txt ---》f:\res\test\Tcmd\a\1.txt
7 发表于 2008-05-12 11:48 ·  中国 广东 深圳 龙岗区 电信
初级用户
积分 72
发帖 28
注册 2008-04-17 15:33
18年会员
UID 116157
性别 男
状态 离线
问题解决了,感谢楼上几位朋友的回答。
论坛跳转: