在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
问题一:假如现在c:\a文件夹下的所有文件和d:\a下的文件相同(修改日期及内容) c:\a下的一个文件被别人修改了或者添加了一个文件! 能否写个bat,判断一下c:\a文件夹下的每个文件的最后修改日期是不是在前两天内!如果是,则复制到d:\a下的相应目录(要是原来有,则覆盖),如果不是,则不复制了. 目录复制: 复制代码 代码如下: @echo off echo y|xcopy c:\a /d /e /r /k d:\a\ pause 复制文件 复制代码 代码如下: echo y | xcopy c:\index2.htm /d /r /k c:\index.htm echo y 就是覆盖文件,y确定。 为特别奖励大家给个多功能的判决原文件大小才复制的 复制代码 代码如下: @echo off ::每5分钟复制以下首页 for /f %%i in ('dir /b c:\index2.htm') do ( set indexdx=%%~zi ) if %indexdx% gtr 5120 ( echo y | xcopy c:\index2.htm /d /r /k c:\index.htm ) 由于bat的局限性,不如vbs功能更强,这里提供一个vbs版本的。大家可以到这里看下。 经测试如果目标文件与源文件相同则不复制。确实一定程度了减少了对硬盘的读写。 问题二:批处理如何判断修改日期复制文件夹下所有文件和子文件夹 A:复制当前目录下所有文件及子文件夹到指定文件夹下,如果文件、文件夹同名但修改时间不同,以最新覆盖旧的(不询问是否覆盖),如果修改时间相同则不复制。 例如:复制C盘Font文件夹下的所有字体(假设该文件夹下有子文件夹和其它类型的文件)到H盘的Fonts文件下,如何实现上述效果。 B:复制当前目录下所有文件及文件夹到指定文件夹下(提供文件夹名,但不知道盘符),如果文件、文件夹同名但修改时间不同,以最新覆盖旧的(不询问是否覆盖),如果修改时间相同则不复制。 例如:复制C盘Font文件夹下的所有字体(假设该文件夹下有子文件夹和其它类型的文件),复制到X盘Fonts文件下(X盘符不确定),如何实现上述效果。 复制代码 代码如下: xcopy *.ttf %1:\Fonts\*.* /S /D /Y 不要猜结果,运行一下看结果。 Xcopy参数介绍 命令格式:XCOPY source [destination] 一堆可选的参数 |
请发表评论