楼 主
求高手来看看能否实现
发表于 2007-06-09 16:19 · 中国 江苏 无锡 江阴市 电信
初级用户
★
积分 28 发帖 12 注册 2007-06-02 16:46 UID 90058 性别 男
状态 离线
求DOS下用MD COPY 实现多文件夹。多文件COPY
。。
本人XP完全暴裂。
无光驱。软驱。家在大山。就一台电脑。所以不用考虑借挂别的机器。
现C盘下。。很多文件夹AND文件需要备份到D盘下。
由于文件和文件夹太多。高达8G。。文件夹多到2000多。文件多达3W多
都是学校里的DOC文档。。现在请各位高手帮忙
做个能简单点的COPY工具。
不要说用XCOPY。。我机器上没有XCOPY。我的系统是在装之前做了
FORMAT C:/S /Q
只能进DOS 用COPY程序。。。
拜托各位高手了。。。。。
第 2 楼
发表于 2007-06-09 22:10 · 中国 山东 济宁 兖州区 联通
钻石会员
★★★★★
积分 10,046 发帖 3,039 注册 2002-11-11 00:00 UID 223 性别 男
状态 离线
第 3 楼
发表于 2007-06-09 22:32 · 中国 江苏 无锡 江阴市 电信
初级用户
★
积分 28 发帖 12 注册 2007-06-02 16:46 UID 90058 性别 男
状态 离线
没有GHOST怎么GHOST。。。。。。。。
大哥。。拜托来点有见地的办法。
第 4 楼
发表于 2007-06-10 19:26 · 中国 山东 济宁 兖州区 联通
钻石会员
★★★★★
积分 10,046 发帖 3,039 注册 2002-11-11 00:00 UID 223 性别 男
状态 离线
那没办法了,仅凭几个dos内部命令,怎么做出新的dos工具来。
简单就是美
第 5 楼
发表于 2007-06-11 14:18 · 中国 广东 深圳 电信
初级用户
★★
积分 167 发帖 95 注册 2007-05-06 09:19 UID 87628 性别 男
状态 离线
假如你有一个文件 todel.txt,里面是所有要删除的文件列表,现在你想将里面列出的每个文件都删掉。假设这个文件是每个文件名占一行,象这样:
c:\temp\a1.txt
c:\temp\a2.txt
c:\temp\subdir\b3.txt
c:\temp\subdir\b4.txt
那么可以用FOR来完成:
for /f %a in (todel.txt) do del %a
这个命令还可以更强大。比如你的 todel.txt 并不是象上面例子那么干净,而是由DIR直接生成,有一些没用的信息,比如这样:
Volume in drive D is DATA
Volume Serial Number is C47C-9908
Directory of D:\tmp
09/26/2001 12:50 PM 18,426 alg0925.txt
12/02/2001 04:29 AM 795 bsample.txt
04/11/2002 04:18 AM 2,043 invitation.txt
4 File(s) 25,651 bytes
0 Dir(s) 4,060,700,672 bytes free
for 仍然可以解出其中的文件名并进行操作:
for /f "skip=5 tokens=5" %a in (todel.txt) do @if exist %a DEL %a
当然,上面这个命令是在进行删除,如果你只是想看看哪些文件将被操作,把DEL换成echo:
for /f "skip=5 tokens=5" %a in (todel.txt) do @if exist %a echo %a
你将看到:
alg0925.txt
bsample.txt
invitation.txt
skip=5表示跳过前5行(就是DIR输出的头部信息),tokens=5表示将每行的第5列作为循环值放入%a,正好是文件名。在这里我加了一个文件存在判断,是因为最后一行的"free"刚好也是第5列,目前还想不出好的办法来滤掉最后两行,所以检查一下可保万无一失。
看了上面的文章有这样的想法`~
首先把你要copy的文件名全都放在一个txt文本里边~~以每行一个文件~~完后执行下面的命令~
for /f %a in (todel.txt) do copy %a d:\
关于怎么在DOS里做成一个文本我可不太会了`~这有待高手的帮忙了`~
这只是我的个人想法``不知道行不行得通`~
[
Last edited by ldr2zjj on 2007-6-11 at 02:19 PM ]
第 6 楼
发表于 2007-06-12 14:20 · 中国 河北 石家庄 北京神州长城通信技术发展中心中国长城互联网
初级用户
★★
积分 152 发帖 75 注册 2007-02-06 22:09 UID 78805 性别 男
状态 离线
Originally posted by ldr2zjj at 2007-6-11 02:18 PM:
看了上面的文章有这样的想法`~
首先把你要copy的文件名全都放在一个txt文本里边~~以每行一个文件~~完后执行下面的命令~
for /f %a in (todel.txt ...
单纯的列出文件名可以用tree。但是完整路径不知道该怎么实现。
等待高手
第 7 楼
发表于 2007-06-12 19:29 · 中国 江苏 无锡 江阴市 电信
初级用户
★
积分 28 发帖 12 注册 2007-06-02 16:46 UID 90058 性别 男
状态 离线
可以用TREE >>1.txt
获取到整个盘的文件目录结构。
但这样怎么才能把他做成见到文件夹 后MD
见到文件直接COPY到改到的位置呢??
第 8 楼
发表于 2007-06-12 20:00 · 中国 山东 济宁 兖州区 联通
钻石会员
★★★★★
积分 10,046 发帖 3,039 注册 2002-11-11 00:00 UID 223 性别 男
状态 离线
tree? 你都format/s了, 哪来的tree?
简单就是美
第 9 楼
发表于 2007-06-13 20:55 · 中国 广东 佛山 电信
元老会员
★★★★
积分 5,170 发帖 1,637 注册 2002-10-16 00:00 UID 8 性别 男 来自 广东佛山
状态 离线
无光驱,无软驱,如果启动DOS?用U盘么?
如果有NC,VC等可以整个文件夹复制的,如果有RAR也可以,借用RAR的压缩和解压缩功能也可做到。
实在没有,用MD在D盘建好文件夹,然后copy *.* d:\XXXX 一次可复制一个文件夹内的全部文件(不包括子文件夹和隐藏文件)。
我的网志
http://hzmys.blog.163.com/
我的网盘
firststep.qjwm.com
fsmys.ys168.com
ssmys.ys168.com
www.brsbox.com/fsmys
www.brsbox.com/ssmys
www.brsbox.com/ccdos
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正