找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 28647|回复: 2

[文件操作] 批处理xcopy命令怎样用通配符拷贝指定日期的目录?

[复制链接]
发表于 2011-11-22 16:28:13 | 显示全部楼层 |阅读模式
小弟刚学习批处理,遇到一事不明,敬请各位大哥指点。
在使用 xcopy 的过程中,使用了通配符,想拷贝指定日期的目录,结果有点意外,如:

xcopy /S/Y \\192.168.1.10\d$\LOG\*2005* D:\
\\192.168.1.10\d$\LOG 下面有很多目录,我只想拷贝带“2005”的目录极其子目录全部内容,但是并没有拷贝成功
我发现通配符只针对子目录下面的文件,而不是针对目录名字!
如果存在文件:
\\192.168.1.10\d$\LOG\200501\20050101.txt,则拷贝成功,但也仅仅拷贝这一个文件,其他文件不拷贝
也就是 *2005* 只针对具体文件名,而不是针对目录

而我想做的是拷贝 200501 下面的所有内容,及200502,200503……下面的所有内容,那么达到这个效果应该怎么写呢?
 楼主| 发表于 2011-11-22 16:35:47 | 显示全部楼层
如果写完目录名称,是可以的,比如:
xcopy /S/Y \\192.168.1.10\d$\LOG\200501 D:\
这样能够成功拷贝,可是用了通配符以后就不行啦,请各位大哥指点啊
发表于 2011-11-22 17:31:03 | 显示全部楼层
本帖最后由 szjwxn 于 2011-11-22 17:59 编辑

看看这个行不

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /d %%i in (\\192.168.1.10\d$\LOG\*2005*) do (
  4.   set var=%%i
  5.      xcopy /s /q !var! d:\  )
  6. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 08:26 , Processed in 0.017137 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表