同一目录下多个txt批处理删除最后5行? 45

代码后请附请注解!如果是删除最后8行呢?如果是删除最后10行呢?另外,删除掉最后几行后,把同一文件夹下的所有TXT全并成一个TXT!... 代码后请附请注解!如果是删除最后8行呢?如果是删除最后10行呢?
另外,删除掉最后几行后,把同一文件夹下的所有TXT全并成一个TXT!
展开
 我来答
帝都小葫芦
2021-11-24
知道答主
回答量:24
采纳率:0%
帮助的人:6.3万
展开全部
1、地址需要根据实际情况修改(在这里修改 set TxtDir="D:\文档")
2、删除最后几行在这里修改,set /a n=!n!-5,后5行就是5,后四行就是4
@echo off&setlocal enabledelayedexpansionset TxtDir="D:\文档"echo 开始操作,请稍侯...cd /d %TxtDir%for /f "delims=" %%a in ('dir /a-d/b *.txt') do ( for /f "delims=" %%b in ('type "%%~a"') do set /a n+=1 set /a n=!n!-5 for /f "delims=" %%c in ('type "%%~a"') do ( if !n!==0 ( echo Processing....>nul ) else ( echo %%c>>"%%~a_New" set /a n-=1 ) ) if exist "%%~a_New" ( echo 文件:%%~a 处理完毕。 move "%%~a_New" "%%~a">nul ))echo.&echo 恭喜,所有文件处理完毕,请按任意键退出&pause>nul
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b22c400
2014-08-15 · TA获得超过1151个赞
知道小有建树答主
回答量:934
采纳率:66%
帮助的人:654万
展开全部
批处理不能以你文件夹在显示上的排序方式来删除文件,必须指定一定的条件,来删除某些文件。

合并所有TXT为一个TXT,可以用命令: copy *.txt yourtxtfile.txt 来完成。
更多追问追答
追问

别人做这个是删除本文件夹内所有TXT文件的前两行,就按这个思路来,给我改成删除后5行,后8行,后10行这个样子,然后删除完了再把本文件夹内的所有TXT合并成一个TXT!

追答
把set /a n=2 改成 set /a n=5

但这程序执行的结果,就不知道是不是你想要的结果。或许它会删掉你本来不想删的文件。
除非你是无条件的,只管删掉前5行,而不管具体是哪些内容的文件。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式