中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-12 20:47
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 救急:批处理复制 跳过已有文件夹 日期换算 实时传输 查看 926 回复 4
楼 主 救急:批处理复制 跳过已有文件夹 日期换算 实时传输 发表于 2010-01-16 20:25 ·  中国 天津 电信
新手上路
积分 3
发帖 3
注册 2010-01-16 19:12
16年会员
UID 158814
性别 男
状态 离线
文件同步复杂批处理求助 大家好,我需要一个关于复制的批处理,小弟不是很懂,请大家帮我看看,具体环境如下: AB两台计算机均为XP简体SP2,通过局域网连接,A机24小时不间断接收卫星文件,存储到W目录,其下有子目录,子目录下为接受的文件,文件名和后缀名无任何规则,诸如fxtjty019.fq5类似。 B机需要W目录中最近两天的文件。B机每天早8点开机,中午12点关机,复制A机前一天到当天12点接收的文件,并且要求传输过程中实时同步,也就是说B机开机后,A机一旦接收到新的文件,就立即复制到B机B目录中. 初步设想是通过net use命令建立映射,然后用XCOPY命令复制,但是遇到几个问题,得不到解决: 日期转换函数,如何取得前一天的日期。 如果批处理程序中途关闭,再次开始复制时如何跳过B目录已经存在的文件和文件夹,试了不少方法,重新复制的时候就直接覆盖原有文件,这样太浪费时间。 实时传输的问题。比如上午10点时B机已经将A机前一天和当天0到10点的文件(夹)复制完,那么A机接受到新的文件如何立即复制到B机。 麻烦大家给我一个批处理代码,跪求~~~~~ 我的QQ:837140508,可邮箱。恳请帮助。在线等~~~
2 发表于 2010-01-17 01:05 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
参考:批处理获取指定天数之前的日期
http://www.bathome.net/thread-3330-1-1.html

跳过已有文件:

xcopy /d FolderA FolderB
3 发表于 2010-01-17 12:41 ·  中国 天津 电信
新手上路
积分 3
发帖 3
注册 2010-01-16 19:12
16年会员
UID 158814
性别 男
状态 离线
Originally posted by HAT at 2010-1-17 01:05:
参考:批处理获取指定天数之前的日期
http://www.bathome.net/thread-3330-1-1.html

跳过已有文件:

xcopy /d FolderA FolderB

版主,日期函数已解决,现在遇到一个新问题:如何用FOR 和IF NOT EXIST命令配合XCOPY命令实现复制时跳过已有文件,要不需要人工干涉的。我用这样的代码,结果是把W目录所有的文件和文件夹复制过去了,但是文件夹都是空的,文件全部存放在B目录根目录下面了啊,不知哪里错了,恳请帮我。附代码:
for /f "delims=" %%i (dir /b/s/a %W目录%') do (
if not exist %e%\%%~nxi xcopy /s/e/y/d "%%i" "B目录"
)
4 发表于 2010-01-17 14:13 ·  中国 福建 三明 电信
高级用户
★★
论坛上抢劫的
积分 551
发帖 246
注册 2006-09-21 12:35
19年会员
UID 63270
状态 离线
xcopy 不是可以有只复制新文件么,看一下帮助嘛!
5 发表于 2010-01-17 15:17 ·  中国 天津 电信
新手上路
积分 3
发帖 3
注册 2010-01-16 19:12
16年会员
UID 158814
性别 男
状态 离线
请求帮忙给个代码……
论坛跳转: