当前位置: 首页 > 图文教程 > 脚本技术 > DOS/BAT > 谈谈xcopy中的排除copy

DOS/BAT
用批处理实现禁止运行指定程序
批处理 Autorun 病毒清除工具
批处理FINDSTR正则表达式用法实例分析
for命令的一些bug分析
for语句中的几种分隔符形式小结
Norton Ghost批处理命令用法详细介绍
CMD CODE PAGE的概念及其设置值使用方法
批处理delims=和tokens=星号 的使用差别
在DOS方式下对注册表进行操作的代码
批处理 API实现文件下载的代码
包你学会批处理整理集合
使用脚本和批处理清除电脑中的痕迹的代码
批处理BAT加强函数代码使用说明
用批处理解决数学问题的代码
cmd下PUSHD和POPD命令使用说明
比较详细的手把手教你写批处理(willsort题注版)
在批处理文件中使用参数的方法
cmd批处理转义字符%的详细解释
超详细的CMD DOS下符号的作用参考
DOS命令批量删除文件及制作该命令的批处理命令详解

DOS/BAT 中的 谈谈xcopy中的排除copy


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 217 ::
收藏到网摘: n/a

不过这个命令用起来真的不好用 并不像windows的帮助写的那么简单 下面来详细说明一下
我们先看看xcopy的帮助是怎么写的
/EXCLUDE:file1[+file2][+file3]...
指定含有字符串的文件列表。每一个字符串
必须在文件的单独行中。如果有任何
字符串与要被复制的文件的绝对路径
相符,那个文件将不会得到复制。
例如,指定如 \obj\ 或 .obj 的字符串会排除
目录 obj 下面的所有文件或带有
.obj 扩展名的文件。
下面我们来作试验
建立两个文件夹 一个叫做data 一个叫做backup
目录树
Z:.

├─data
│ ├─bad
│ └─good
│ bad.txt
│ good.txt
│ 1.bad
│ 2.bad
│ 3.bad
│ 5.bad
│ 4.bad

└─backup
偶们的目标就是把 凡是标记了good的文件夹以及文件copy到backup这个目录里面 而排除标记了bad的文件夹和目录
根据xcopy的帮助写如下命令
xcopy /e /s /h /exclude:uncopy.txt z:\data\ z:\backup\
uncopy.txt里面就包含了我们想要排除的文件 以及 文件夹
内容如下
\bad\
bad.txt
.bad
xcopy /e /s /h /exclude:uncopy.txt z:\data\ z:\backup\ 这条命令大家先不要执行 觉得有错吗?
ok 我们来执行看看
Z:\>xcopy /e /s /h /exclude:uncopy.txt z:\data\ z:\backup\
无效路径
复制了 0 个文件
真有趣阿 呵呵 无效路径
xcopy /e /s /h /exclude:uncopy.txt z:\data\ z:\backup\ 问题出在z:\data\ 上面
正确的写法应该是z:\data 不要\ 而后面的 z:\backup\ 则要不要\都可以
改过以后我们再来执行
Z:\>xcopy /e /s /h /exclude:uncopy.txt z:\data z:\backup\
Z:\data\good\good.txt
复制了 1 个文件
看一下backup的目录树
Z:.
└─good
good.txt
对比
Z:.
├─bad
└─good
bad.txt
good.txt
1.bad
2.bad
3.bad
5.bad
4.bad
我们成功的复制了只标记了good的文件夹以及文件
这个用法不错 比如 你硬盘上有文件损坏了 可以使用这个 方法避开损坏的文件
又或者 避开 一些不需要的文件 只copy想要的东西
在通配符不好使的情况下 你可以尝试这种方法
thx:10对此次测试的重要帮助