批处理在多个文本的第5行后插入一行相同文字

批处理实现在多个文本的第5行后插入一行相同文字... 批处理实现在多个文本的第5行后插入一行相同文字 展开
 我来答
12d1a2235w652d
推荐于2016-10-24 · TA获得超过385个赞
知道小有建树答主
回答量:391
采纳率:80%
帮助的人:327万
展开全部
@echo off
setlocal enabledelayedexpansion
dir /b "存放多个文本的文件夹的名称">>temp.tmp
set ctr=0
for /f "delims=` tokens=* eol=`" %%a in (temp.tmp) do (
 for /f "delims=` tokens=* eol=`" %%b in (存放多个文本的文件夹的名称\%%a) do (
  set ctr+=1
  set %%a%ctr%==%%b
  if !ctr! geq 5 goto :n
 )
)
:n
md newfile
for /f "delims=` tokens=* eol=`" %%a in (temp.tmp) do (
 for /l %%b in (1,1,5) do (
  echo !%%a%%b!>>newfile\%%a
 )
 echo 要插入的一行文字>>newfile\%%a
)
for /f "delims=` tokens=* eol=`" %%a in (temp.tmp) do (
 set ctr=0
 for /f "delims=` tokens=* eol=` skip=5" %%b in (存放多个文本的文件夹的名称\%%a) do (
  set /a ctr+=1
  set %%a%ctr%==%%b
 )
 set ctr%%a=!ctr!
)
for /f "delims=` tokens=* eol=`" %%a in (temp.tmp) do (
 for /l %%b in (1,1,!ctr%%a!) do (
  echo !%%a%%b!>>newfile\%%a
 )
)
echo 已完成,新文件保存在文件夹newfile中。
pause
del /f /q temp.tmp >nul

请把这个批处理放在存放多个文本的文件夹旁,将“存放多个文本的文件夹的名称”
替换后,双击运行。

更多追问追答
追问
感谢回答!
但是执行后的文件内容都是

ECHO 处于关闭状态。
ECHO 处于关闭状态。
ECHO 处于关闭状态。
ECHO 处于关闭状态。
ECHO 处于关闭状态。
要插入的一行文字

请问什么原因?
追答
@echo off
setlocal enabledelayedexpansion
dir /b "存放多个文本的文件夹的名称">temp.tmp
for /f "delims=` tokens=* eol=`" %%a in (temp.tmp) do (
 set ctr=0
 for /f "delims=` tokens=* eol=`" %%b in ('type "存放多个文本的文件夹的名称\%%a"') do (
  set /a ctr+=1
  if !ctr! leq 5 (
   set "%%a!ctr!=%%b"
  ) else (
   rem nothing
  )
 )
)
md newfile
for /f "delims=` tokens=* eol=`" %%a in (temp.tmp) do (
 for /l %%b in (1,1,5) do (
  echo !%%a%%b!>>newfile\%%a
 )
 echo 要插入的一行文字>>newfile\%%a
)
for /f "delims=` tokens=* eol=`" %%a in (temp.tmp) do (
 set ctr=0
 for /f "delims=` tokens=* eol=` skip=5" %%b in ('type "存放多个文本的文件夹的名称\%%a"') do (
  set /a ctr+=1
  set "%%a!ctr!=%%b"
 )
 set ctr%%a=!ctr!
)
for /f "delims=` tokens=* eol=`" %%a in (temp.tmp) do (
 for /l %%b in (1,1,!ctr%%a!) do (
  echo !%%a%%b!>>"newfile\%%a"
 )
)
echo 已完成,新文件保存在文件夹newfile中。
pause
del /f /q temp.tmp >nul
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式