本帖最后由 yhcfsr 于 2017-12-25 12:30 编辑
可以肯定,这段代码使用的1.txt中存放的是带后缀的文件名,像题主这样只写出文件名部分字段,即使复制成功,去B文件夹文件夹看肯定全是没后缀的白色文件
至于提示找不到文件,如果是中文提示就是代码存在问题(我看了下这个可能不大);如果是英文提示,这是代码作者加上去的,表示源目录不存在1.txr中所列目录或文件
我稍微改了下,不过并不能解决找不文件的问题,我想你要仔细检查1.txt中的内容- @echo off
- setlocal enabledelayedexpansion
-
- rem set parameter here
-
- rem 查找的源目录
- set sourcePath=F:\录音
- rem 复制到文件夹
- set targetPath=E:\201705-201711
- rem 要查找的文件列表
- set fileList=1.txt
-
- set /a copyCount=0
-
- dir /a-d /s /b !sourcePath!>filelist.txt
-
- for /f "delims=" %%i in (!fileList!) do (
-
- find "%%i" filelist.txt > findfile.txt
-
- if !errorlevel! equ 0 (
-
- for /f "skip=2 delims=" %%j in (findfile.txt) do (
- copy /y %%j !targetPath!>nul
- set /a copyCount+=1
- )
-
- )else (
- echo can't find file %%i
- )
-
- )
-
- rem 查找文件目录
- del filelist.txt
- rem 找到的文件目录
- del findfile.txt
- echo ************************************
- echo copy file success: !copyCount!
- pause
复制代码
|