返回列表 发帖
@echo off
dir /b/s/a-d "e:\abc\*.*">tem.txt
findstr /ivg:tem.txt 1.txt>d:\123\error.txt
for /f "delims=" %%i in ('findstr /ig:1.txt tem.txt') do copy /y "%%i" "d:\123"
del tem.txt
pauseCOPY

TOP

回复 12# guaiwu

1.txt 中有 tem.txt 中没有的

TOP

回复 14# super1129

dir/b/s/a-d "e:\abc\*.*">2.txt
运行上面的,把1.txt 和 2.txt 发附件上来。

TOP

我那个 findstr 确实不行,得另想办法。

TOP

只想到这种嵌套循环对比判断的方法,文件太大则效率不高
@echo off&setlocal enabledelayedexpansion
(for /f "delims=" %%i in (1.txt) do (
set "num="
for /f "delims=" %%j in (tem.txt) do (
set "var=%%j"
set "str=!var:%%i=!"
if not "!var!"=="!str!" set num=n
)
if not defined num echo %%i
))>error.txt
start error.txtCOPY
1

评分人数

TOP

回复 24# guaiwu


batcher 版主的意思是建议你写代码时缩进
否则读你的代码很累
缩进方法,通常是每对括弧内的语句前面都加几个空格或制表符
for /l %%i in (1 1 2) do (
命令
命令
for /l %%j in (1 1 2) do (
命令
命令
for /l %%j in (1 1 2) do (
命令
命令
)
)
)COPY

TOP

返回列表