[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理如何实现给文本内容添加行号?

文本内容比较多,但每行内容的前面没有序号,想用批处理自动给文本内容每行前面加个行号,请问如何写呢?
例如文本内容如下:
11.txt
需v师德师风
bdbdfbd-dfvd=dfd
231231323223123123232312323[fff]
sddfsfsfsd3231方便更方便
自动处理后格式为:
1-bdbdfbd-dfvd=dfd
2-231231323223123123232312323[fff]
3-sddfsfsfsd3231方便更方便
并输出到另外一个文本22.txt里

回复 3# DAIC


    来一个perl
  1. perl -ne 'print "$.-$_"'     1.txt>2.txt
复制代码

TOP

回复 20# terse

不行

TOP

编码问题吗 但也不对
如是编码问题的话 10楼代码也不能处理
下面能正确显示不
  1. @echo off
  2. for /f "tokens=1*delims=[]" %%i in ('find /v /n "" ^<11.txt')do echo,%%i-%%j
  3. pause
复制代码

TOP

回复 18# DAIC


     是XP的

TOP

回复 7# wh1234567


    XP还是Win7?

TOP

回复 14# wh1234567


    我这测试没问题

TOP

  1. @set @a=0;/*&echo off
  2. cscript /nologo /e:jscript %0 <11.txt >22.txt
  3. pause&exit
  4. */
  5. str = WScript.StdIn.ReadAll()
  6. str = str.replace(/\r?\n/g,'");WScript.Echo(++i + "-')
  7. str = 'WScript.Echo((i=1)+"-'+str+'")'
  8. eval(str)
复制代码

TOP

  1. @set @a=0;/*&echo off
  2. findstr /n .* 11.txt |cscript /nologo /e:jscript %0 >22.txt
  3. pause&exit
  4. */
  5. str = WScript.StdIn.ReadAll()
  6. str = str.replace(/^(\d+):/gm,'$1-')
  7. WScript.Echo(str)
复制代码

TOP

本帖最后由 wh1234567 于 2014-7-21 00:28 编辑

回复 11# CrLf


    这个不行,输不出

TOP

  1. @echo off
  2. ((for /f "delims=" %%a in ('findstr /n .* 11.txt') do (
  3.    set "str=%%a"
  4.    set /a n+=1
  5.    setlocal enabledelayedexpansion
  6.    set "str=!str:*:=!"
  7.    echo !n!-!str!
  8.    endlocal
  9. ))>22.txt
复制代码

TOP

本帖最后由 wh1234567 于 2014-7-21 00:29 编辑

回复 10# CrLf


    哦,这个正常,感谢您了

TOP

本帖最后由 CrLf 于 2014-7-21 00:22 编辑
  1. @echo off
  2. for /f %%a in ('find /c /v "" ^<11.txt') do set count=%%a
  3. (for /l %%a in (1 1 %count%) do (
  4.   setlocal enabledelayedexpansion
  5.   set /p "str="&echo;%%a-!str!
  6.   endlocal
  7. ))<11.txt >22.txt
复制代码

TOP

  1. @echo off
  2. (for /f "tokens=1* delims=:" %%a in ('findstr /n .* 11.txt') do echo %%a-%%b)>22.txt
复制代码
1

评分人数

    • wh1234567: 热心助人,感谢您的帮助技术 + 1

TOP

  1. hash /printf:"%d-%s",number,string /file 11.txt >22.txt
复制代码

TOP

返回列表