Board logo

标题: [其他] 批处理如何实现复制当前文件夹/目录里的除批处理自身以外的文件到其他文件夹/目录? [打印本页]

作者: 漠然0209    时间: 2016-5-26 09:56     标题: 批处理如何实现复制当前文件夹/目录里的除批处理自身以外的文件到其他文件夹/目录?

本帖最后由 pcl_test 于 2016-5-26 21:08 编辑
  1. taskkill /im iBrandDRP.exe /f
  2. taskkill /im iBrandRMS.exe /f
  3. taskkill /im iBrandPOS.exe /f
  4. copy /y "%~dp0" d:\RMS\bin
  5. copy /y "%~dp0" d:\RMS\drpbin
  6. pause
复制代码
这段代码会把批处理本身复制进去。如何排除本身bat呢?还有一个问题,例如我只想复制 iBrandRMS.exe到d:\RMS\bin不包括 iBrandDRP.exe 文件进去这个要怎么做呢。求大神优化下谢谢!
作者: enoone1    时间: 2016-5-26 10:22

本帖最后由 enoone1 于 2016-5-26 11:10 编辑

用XCOPY
/EXCLUDE:file1[+file2][+file3]...
              指定含有字符串的文件列表。每个字符串在文件中应位于单独的一行。
              如果任何字符串与复制文件的绝对路径的任何部分相符,则排除复制
              该文件。例如,指定如 \obj\ 或 .obj 的字符串会分别排除目录
              obj 下面的所有文件或带有 .obj 扩展名的所有文件。
示例:(未测试)
cd "%~dp0"
if not exist "nocopy" echo %~0> nocopy&echo nocopy>> nocopy&echo iBrandRMS.exe>> nocopy
xcopy %cd% d:\RMS\bin /exclude:nocopy /S /H /D /Y
作者: 漠然0209    时间: 2016-5-26 11:22

回复 2# enoone1


    这样写的话那我每次更新文件的话,不都是要重新写下代码吗?
作者: enoone1    时间: 2016-5-26 12:10

回复 3# 漠然0209


    ???你更新文件跟这排除复制有什么关联
作者: gawk    时间: 2016-5-26 19:16

例如我只想复制 iBrandRMS.exe到d:\RMS\bin不包括 iBrandDRP.exe 文件进去这个要怎么做呢
  1. copy /y iBrandRMS.exe d:\RMS\bin
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2