如何使用批处理(batch)仅通过Windows 10自带功能在文本文件指定行后插入多行内容
Windows 10 批处理实现指定行后插入多行内容
以下脚本完全依赖系统内置命令实现,无任何第三方工具依赖,可直接满足在第4行后插入foo、bar两行的需求。
可直接运行的批处理代码
@echo off setlocal enabledelayedexpansion :: 可自定义配置参数 set "target_file=test.txt" set "insert_after_line=4" set "temp_file=%temp%\temp_edit_%random%.tmp" set /a current_line=0 ( for /f "delims=" %%l in ('type "%target_file%"') do ( set /a current_line+=1 echo %%l :: 命中指定行后追加插入内容 if !current_line! equ %insert_after_line% ( echo foo echo bar ) ) ) > "%temp_file%" :: 临时文件替换原文件,无残留 move /y "%temp_file%" "%target_file%" >nul endlocal
使用说明
- 脚本运行前将目标文本文件和批处理放在同一目录,或把
target_file参数修改为文件的绝对路径即可 - 插入位置、要插入的自定义文本内容,可直接修改开头的配置块,无需改动核心逻辑
- 脚本处理过程会完整保留原文件每行的文本内容,不会因行内包含空格、特殊符号出现内容截断
- 如果原文件存在空行,可将for循环内的源文件读取命令替换为
'findstr /n "^" "%target_file%"',搭配字符串截取去掉行号前缀,即可完整保留空行
处理完成后的文件内容与需求示例完全一致,顺序为:
- 原文件第1-4行内容
- 插入的
foo、bar两行 - 原文件第5行及后续所有内容
内容的提问来源于stack exchange,提问作者guest257351
相关产品推荐
相关产品推荐

