Board logo

标题: [文本处理] BAT如何批量在txt文本的第二行,和倒数第二行插入文字? [打印本页]

作者: xiaoxiaol01    时间: 2013-5-4 09:01     标题: BAT如何批量在txt文本的第二行,和倒数第二行插入文字?

求助,如何批量在txt文本的第二行,和倒数第二行插入文字!

比如,01文件夹下有100个txt文本,我想批量给这100个TXT文本的第二行和倒数第二行中间各插入不同的文字!   

效果如下:某个TXT文件时这样的

***************
***************
***************
***************
***************
***************
***************    改成  


***************
*****我想*******
***************
***************
***************
*****要的效果****
***************
作者: xxpinqz    时间: 2013-5-4 12:58

本帖最后由 xxpinqz 于 2013-5-5 03:03 编辑
  1. @echo off&setlocal enabledelayedexpansion
  2. set "str1=我想"&set "str2=要的效果"
  3. for %%a in (*.txt) do (
  4.   set /a q=2,l=0,n=0
  5.   for /f "tokens=2 delims=:" %%b in ('find /v /c "" "%%a"') do set /a h=%%b-1
  6.   (for /f "delims=" %%c in ('type "%%a"') do (
  7.   set /a l+=1
  8.   set /a x="1/(!q!-!l!)",y="1/(!h!-!l!)" 2>nul&&(
  9.      echo %%c
  10.   )||(
  11.      set com="(echo %%c^&echo,)|findstr /o "$""&set "str=%%c"
  12.      for /f "delims=:" %%d in ('!com!') do set /a id="(%%d-2)/2"
  13.      set /a n+=1
  14.      for /f "tokens=1-2 delims= " %%e in ("!n! !id!") do echo !str:~,%%f!!str%%e!!str:~%%f!
  15.   )
  16.   ))>"%%~na.$$$"
  17. )
  18. ::ren *.$$$ *.txt
复制代码
原来这个变量x,y可以不要的啊,不知道
作者: apang    时间: 2013-5-4 16:50

  1. @echo off
  2. for %%i in (*.txt) do (
  3.    set /a n=0,m=0
  4.    for /f "usebackq delims=" %%a in ("%%i") do set /a m+=1
  5.    (for /f "usebackq delims=" %%a in ("%%i") do (
  6.       set /a n+=1
  7.       set /a "1/(n-2)" 2>nul||echo,我想
  8.       set /a "1/(m-n)" 2>nul||echo,要的效果
  9.       echo,%%a
  10.    ))>$
  11.    move $ "%%i"
  12. )
  13. pause
复制代码

作者: sxw    时间: 2013-5-4 19:19

随机插入?嘎嘎
作者: xiaoxiaol01    时间: 2013-5-4 23:23

回复 3# apang


    您好! 您的代码插入 文字没问题但是不是插在第二行,还有,如果想插入<a href="http://www.baidu.com"><strong>baidu</strong></a>  就不行了,
作者: xiaoxiaol01    时间: 2013-5-4 23:25

回复 2# xxpinqz


    您好 你的这段我不懂用。。 菜鸟见谅!
作者: apang    时间: 2013-5-5 00:00

回复 5# xiaoxiaol01


   "插入第二行和倒数第二行的中间" 是个什么意思?
作者: 将脚本进行到底    时间: 2013-5-5 01:25

不得不说,BAT真的很霸道,我看了下,这个要是用VBS写至少要五六十行代码!
作者: xxpinqz    时间: 2013-5-5 03:00

回复 6# xiaoxiaol01
我也是才学2个月的菜鸟,纯粹练手。
作者: CrLf    时间: 2013-5-5 04:53

回复 8# 将脚本进行到底


    呃,不至于吧




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2