中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-01 11:32
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]求一个批处理 查看 1,613 回复 5
楼 主 [求助]求一个批处理 发表于 2005-05-22 00:00 ·  中国 广东 韶关 联通
初级用户
积分 159
发帖 11
注册 2004-01-26 00:00
22年会员
UID 16098
性别 男
状态 离线
我有一个文件夹里面同事不定期传一些文件,里面包含子目录,我怎样用批处理来检测这个文件夹有新文件、新文件夹并把它们copy出来备份,谢了,我的操作系统是windows2000
2 发表于 2005-05-25 00:00 ·  中国 湖北 武汉 电信
初级用户
积分 117
发帖 5
注册 2004-07-01 00:00
22年会员
UID 27668
性别 男
状态 离线
同样需要这样的批处理。以前在学校时让老师帮忙写了一个,后来那张软盘发霉了,程序也就“霉了”。记得是通过文件的日期实现的。
3 发表于 2005-05-29 00:00 ·  中国 山西 太原 中移铁通
元老会员
★★★★
Batchinger
积分 4,432
发帖 1,512
注册 2002-10-18 00:00
23年会员
UID 19
性别 男
状态 离线
Re wjwjwjwj :
  这样的功能可以考虑不使用批处理,使用合适的同步备份软件可以达到很好的效果,这在网上有很多,比如DataKeeper/腾龙/文件备份专家等等。
  如果要用批处理来实现,建议不使用日期判断,因为这些文件的日期并不能标示文件是否“新”,即是否有无备份,只有通过定期(通常是每日,因为日期的隔日判断比较复杂)执行备份操作才能实现类似的特征。
  而对这种文件同步备份的处理,现在较常用的方法是建立文件信息数据库,其中包含其管理的所有文件的生成、修改时间、有无备份、备份的版本等信息,然后每次备份根据数据库进行操作,现在大多数备份软件原理都是如此实现的,但用批处理实现它是代价是比较高昂的。
  另外一种方案应用于早期的DOS平台下,即给每个备份文件都设置“归档(A)”属性,这通常是由文档编辑器或者系统(比如DOS)自动完成的,然后备份软件(比如XCOPY)会扫描所有的备份文件,如果其有归档属性,则进行备份,同时去掉其归档属性,如果没有归档属性则跳过。而备份后所有的文件归档属性全部被清除,以后若有新建或修改的文件,他们又会自动恢复归档属性,则下次备份时就会被检测到而再次备份。这用批处理实现起来,就十分简单。
※ Batchinger 致 Bat Fans:请访问 批处理编程的异类 ,欢迎交流与共享批处理编程心得!
4 发表于 2005-05-30 00:00 ·  中国 湖北 黄石 移动
初级用户
积分 137
发帖 12
注册 2005-05-25 00:00
21年会员
UID 39045
性别 男
状态 离线
我可以给你一个思路,你先检查一下你电脑里面一个空文件夹所占用的空间数。然后能过for与find "空字数"命令对你所要检测的目录作出比较,是空没有。反之则有!
5 发表于 2005-05-30 00:00 ·  中国 山西 临汾 中移铁通
元老会员
★★★★
Batchinger
积分 4,432
发帖 1,512
注册 2002-10-18 00:00
23年会员
UID 19
性别 男
状态 离线
Re sncffbo  兄的方法可能有些局限性,就是文件备份的最小单位是文件夹,而非单个文件。如果某个文件夹中仅有部分文件变动,那么此方案将会备份整个文件夹。这有时是用户所不希望的。  另外,关于“空文件夹所占用空间数”的问题,虽然文件夹本身确实占用一定的磁盘空间,但对系统来说是透明的,也就是说在DOS和Windows下它们都会显示0字节。不知兄所谓的"空字数"所指何在?
※ Batchinger 致 Bat Fans:请访问 批处理编程的异类 ,欢迎交流与共享批处理编程心得!
6 发表于 2005-05-30 00:00 ·  中国 广东 韶关 联通
初级用户
积分 159
发帖 11
注册 2004-01-26 00:00
22年会员
UID 16098
性别 男
状态 离线
以下是引用willsort在2005-5-29 12:09:50的发言:

Re wjwjwjwj :
  这样的功能可以考虑不使用批处理,使用合适的同步备份软件可以达到很好的效果,这在网上有很多,比如DataKeeper/腾龙/文件备份专家等等。
  如果要用批处理来实现,建议不使用日期判断,因为这些文件的日期并不能标示文件是否“新”,即是否有无备份,只有通过定期(通常是每日,因为日期的隔日判断比较复杂)执行备份操作才能实现类似的特征。
  而对这种文件同步备份的处理,现在较常用的方法是建立文件信息数据库,其中包含其管理的所有文件的生成、修改时间、有无备份、备份的版本等信息,然后每次备份根据数据库进行操作,现在大多数备份软件原理都是如此实现的,但用批处理实现它是代价是比较高昂的。
  另外一种方案应用于早期的DOS平台下,即给每个备份文件都设置“归档(A)”属性,这通常是由文档编辑器或者系统(比如DOS)自动完成的,然后备份软件(比如XCOPY)会扫描所有的备份文件,如果其有归档属性,则进行备份,同时去掉其归档属性,如果没有归档属性则跳过。而备份后所有的文件归档属性全部被清除,以后若有新建或修改的文件,他们又会自动恢复归档属性,则下次备份时就会被检测到而再次备份。这用批处理实现起来,就十分简单。谢了试一下同步奋份
论坛跳转: