@echo off&setlocal enabledelayedexpansion
set n=0
for /f "delims=" %%a in (test.txt) do (
set /a n+=1
more +!n! test.txt | findstr /B /E /C:"%%~a" > nul || echo %%a
)
pause
追问
文件还是原来的样子,没有改变啊
追答@echo off & setlocal enabledelayedexpansion
set /a n=0
set "filename=test.txt"
(for /f "delims=" %%a in (%filename%) do (
set /a n+=1
if "!%%a!"=="" (
more +!n! %filename%|findstr /B /E /C:"%%~a" > nul||echo %%a
set "%%a=1")
))>#
move # %filename%
将set "filename=test.txt" 中的test.txt改为要处理的文件名
本回答被网友采纳