- @echo off
- setlocal enabledelayedexpansion
-
- for %%i in (*.txt) do (
- set "filename=%%i"
- set /a totalLines=0
-
- for /f "delims=" %%j in ('type "!filename!" ^| find /c /v ""') do (
- set /a totalLines=%%j
- )
-
- if !totalLines! gtr 999 (
- echo 文件 "!filename!" 超出999行,无法处理。
- ) else (
- set /a lineNo=1
- for /f "usebackq delims=" %%k in ("!filename!") do (
- set /a paddedLineNo=1000000 + !lineNo!
- set "formattedLine=!paddedLineNo:~-3! %%k"
- set /p "=!formattedLine!" < NUL
- echo(
- set /a lineNo+=1
- )
-
- >> "!filename!" (
- for /l %%l in (1,1,!totalLines!) do (
- set /a paddedLineNo=1000000 + %%l
- set "formattedLine=!paddedLineNo:~-3! "
- echo !formattedLine!
- )
- )
- )
- )
-
- echo 批量处理完成。
- pause
复制代码 ----------------------------------------------------------
该脚本首先遍历当前目录下所有的 .txt 文本文件,对每个文件执行以下操作:
计算文件总行数,并检查是否超过999行。
如果不超过999行,则逐行读取并添加前缀序号(前面补零至3位)。
将带有前缀序号的新行内容追加回原文件。
注意:此脚本会直接修改原始文本文件,请在运行前做好备份工作。 |