CODE: [Copy to clipboard]
@echo off
:enterpath
cls
echo 请输入文件夹路径
set p=
set /p p="如果是当前文件夹请按回车键:"
if "%p%" == "" set p=%cd%
call:confirm "%p%"
:confirm
if not exist "%p%"\test.txt echo Test.txt文件不存在,请确认! & pause & goto enterpath
echo 您要修改的文件所在的路径是:%~f1
echo.
set c=
set /p c="确认请按[Enter]继续,重设请按任意键:"
if "%c%" == "" set p=%~f1
if not "%c%" == "" goto enterpath
if exist "%p%"\test goto modify
:modify
for /f "usebackq" %%i in ("%p%"\test.txt) do (
::上面这一行的变量 p 如果去掉双引号能正常运作,但不支持带空格文件夹
echo %%i | findstr /i "I will delete this line"
if errorlevel 1 echo %%i >> "%p%\temp.txt")
move /y "%p%"\temp.txt "%p%\test.txt"
pause
exit
这个批处理还有个缺点就是会删除空行,还不知道怎么弄,批处理的知识我还要再多家了解才行。