怎么批量删除文件夹中所有的txt文件的前31行?

最好是批处理命令,前31行还可以调的,比如说前n行。谢谢大家的回答,我想要a6930715的那种答案,但是他的运行结果显示“系统显示找不到指定的文件”我搜索到的批处理代码... 最好是批处理命令,前31行还可以调的,比如说前n行。

谢谢大家的回答,我想要 a6930715 的那种答案,但是他的运行结果显示“系统显示找不到指定的文件”

我搜索到的批处理代码如下,运行结果是删除了txt中的前31行,和最后一行,但是我不想让删除最后一行,却不会弄,并且这个代码的运行速度还很慢。
@echo off
setlocal enabledelayedexpansion
for %%a in (*.txt) do (
set n=0
for /f "skip=1 delims=" %%b in ('type "%%a"') do (
if "!n!"=="31" (echo !b!>"%%a") else echo !b!>>"%%a"
set "b=%%b" & set /a n+=1
))
pause
展开
 我来答
_you_you_
推荐于2016-04-27 · TA获得超过602个赞
知道小有建树答主
回答量:202
采纳率:0%
帮助的人:286万
展开全部
@ECHO OFF
::设置要操作的文件夹路径如"d:\"及删除的前N行如31
SET TxtDir="d:\"
SET /A N=31
ECHO 开始操作,请稍后...
CD /D %TxtDir%
FOR /F "tokens=1 delims=" %%I IN ('DIR /A /B *.txt') DO ((MORE +%N% "%%I">"%%I_")&(DEL /A /F /Q "%%I")&(REN "%%I_" "%%I"))
ECHO 操作结束
PAUSE

注:运行前根据上述注释设置好文件夹名及删除行数;而且这个运行起来应该很快!
yes___no
2009-06-05 · TA获得超过3153个赞
知道大有可为答主
回答量:1988
采纳率:100%
帮助的人:2067万
展开全部
用Replace Pioneer来实现。
1. 打开Tools->Batch Runner菜单
2. 点击Pick Files选择待处理的多个文件
3. 点击Fast Replace按钮,点击Add,在Search输入"^([^\n]*\n){31}"(不带双引号),点击ok
4. 点击Start即可。

注意提前备份。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
a6930715
2009-06-05 · TA获得超过202个赞
知道小有建树答主
回答量:197
采纳率:0%
帮助的人:110万
展开全部
@echo off
setlocal enabledelayedexpansion
for %%i in (*.txt) do (
set no=0

for /f "skip=1" %%a in (%%i) do (
if !no!==1 if not "!last!"=="" echo !last!>>tmp.txt
set no=31

)
del %%i
ren tmp.txt %%i
)

条件就是,那些txt文件的名字中不要含空格。将这个批处理放到那个文件夹里面执行就可以了 批处理就是.bat文件,保存为.bat文件运行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Rick视界
2009-06-05
知道答主
回答量:27
采纳率:0%
帮助的人:17.6万
展开全部
先选中第一个文件,然后按住Shift,再点第31个文件。就选中了前31个文件了。然后直接删除就OK了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式