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

[文本处理] 【已解决】怎样按照列表清单复制文件,并记录不存在的文件,在线急等!!谢谢!!

[复制链接]
发表于 2016-1-3 16:40:10 | 显示全部楼层 |阅读模式
如图,这是一个列表清单,用批处理进行批量复制。
假如,这个清单里某个文件存在,那就复制。
假如,并不存在,那么就创建一个列表,一条条的进行记录。
请求大神做个可以自定义列表清单文件,和输出目录及错误列表文件。。。
例图:
文件列表清单:(这个列表清单里没有规律的,也不只是全在F盘下面,只是想更清楚表达这个意思,但是有很多同名的文件,)
F:\g1
F:\g2                  



比如:F 盘里有A,B,C,D个目录,目录下面有很多同名文件
批量复制时遇到一个问题,就是,我想要批量复制F:\g1, F:\g2这些文件时,它会把 A,B,C,D
也就是F盘下面所有目录里的g1,g2这些文件全部复制了
甚至是A,B,C,D目录的子目录的g1,g2这些文件全部复制了
但是我只想要F盘下面g1,g2这些文件,也就是列表里面用绝对路径指定的文件。。。
请问怎么样只复制列表清单里指定的这个文件???
看教程,查百度,查了好多了。
在线急等。。。
挺急的
谢谢大神了。。。
大谢!!!
跪谢!!!
发表于 2016-1-3 17:02:26 | 显示全部楼层
  1. @echo off
  2. set "FileList=A3测试.txt"
  3. set "FolderDst=F:\网络游戏\诛仙-422\422界面配置\422界面文件\tga"
  4. set "FileError=不存在.txt"
  5. type nul > "%FileError%"
  6. for /f "delims=" %%a in ('type "%FileList%"') do (
  7.     if not exist "%%a" (
  8.         if exist "%%a" (
  9.             xcopy /e "%%a" "%FolderDst%\%%~pa"
  10.         ) else (
  11.             >> "%FileError%" echo %%a
  12.         )
  13.     ) else (
  14.         >> "%FileError%" echo 存在同名文件夹 %%a
  15.     )
  16.    
  17. )
  18. echo 完成
  19. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
172788876 + 1 大谢!!!

查看全部评分

 楼主| 发表于 2016-1-3 17:25:47 | 显示全部楼层
回复 2# DAIC


    嗯,俺试试!!
谢了。。
 楼主| 发表于 2016-1-3 17:27:48 | 显示全部楼层
回复 2# DAIC


   大神,俺发现你一天24小时都在线哈。。。
 楼主| 发表于 2016-1-3 17:36:37 | 显示全部楼层
回复 2# DAIC


    大神,我是说哪个文件没有,就记录错误,不是说文件目录。。。
就是说,列表清单里面这个路径没有这个文件,就记录错误,大神给完善下呗。。。
跪谢!!!
 楼主| 发表于 2016-1-3 18:13:04 | 显示全部楼层
本帖最后由 172788876 于 2016-1-4 00:08 编辑

回复 2# DAIC

大神,刚刚我试了,你这个会重复复制,我的列表清单里都是绝对路径的。。。。
用我刚刚发的那个复制不会重复,但是无法判断错误。。。
麻烦大神再修改下。。
发表于 2016-1-3 20:38:32 | 显示全部楼层
回复 6# 172788876


    你把代码保存为 test.bat 看看是否会重复复制?
发表于 2016-1-3 20:48:47 | 显示全部楼层
回复 5# 172788876


不太明白你在说什么。
请把我的代码生成的“不存在.txt”的内容和你希望得到的内容分别发出来看看,直接发文本内容,不要截图。
 楼主| 发表于 2016-1-3 21:14:50 | 显示全部楼层
本帖最后由 172788876 于 2016-1-4 00:09 编辑

回复 8# DAIC
 楼主| 发表于 2016-1-3 21:42:35 | 显示全部楼层
本帖最后由 172788876 于 2016-1-4 00:09 编辑

回复 8# DAIC
 楼主| 发表于 2016-1-3 22:11:49 | 显示全部楼层
回复 10# 172788876


    抱歉哈,是我逻辑太乱了。。。
群里叫我怎么提问了
 楼主| 发表于 2016-1-4 00:10:14 | 显示全部楼层
回复 2# DAIC


    如图,这是一个列表清单,用批处理进行批量复制。
假如,这个清单里某个文件存在,那就复制。
假如,并不存在,那么就创建一个列表,一条条的进行记录。
请求大神做个可以自定义列表清单文件,和输出目录及错误列表文件。。。
例图:
文件列表清单:(这个列表清单里没有规律的,也不只是全在F盘下面,只是想更清楚表达这个意思,但是有很多同名的文件,)
列表清单:
F:\g1
F:\g2                  


比如:F 盘里有A,B,C,D个目录,目录下面有很多同名文件
批量复制时遇到一个问题,就是,我想要批量复制F:\g1, F:\g2这些文件时,它会把 A,B,C,D
也就是F盘下面所有目录里的g1,g2这些文件全部复制了
甚至是A,B,C,D目录的子目录的g1,g2这些文件全部复制了
但是我只想要F盘下面g1,g2这些文件,也就是列表里面用绝对路径指定的文件。。。
请问怎么样只复制列表清单里指定的这个文件???
在线急等。。。
挺急的。
谢谢大神了。。。
大谢!!!
跪谢!!!
 楼主| 发表于 2016-1-4 15:04:46 | 显示全部楼层
回复 8# DAIC


大神,我把那些文件全部打包了,就是用这个命令时,输出的结果比列表多很多,感觉没有按照列表清单来。。
请求大神看一下。。谢谢!!!
地址:http://pan.baidu.com/s/1bwGOn8
我想观摩下大神用 xcopy 是什么思路的。。。
大谢!!!
发表于 2016-1-4 22:15:42 | 显示全部楼层
总是依赖等靠要终究不是神马好办法,zl为啥不亲自看看xcopy帮助呢?xcopy不行的话还有copy呀
 楼主| 发表于 2016-1-4 22:45:48 | 显示全部楼层
回复 14# WHY


    嗯,谢谢了。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 17:22 , Processed in 0.020961 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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