
如果您需要在Windows系统中通过批处理脚本(.bat)对文本文件进行读取或写入操作,则需借助内置的命令行工具和语法结构。以下是实现该目标的多种方法:
一、使用for /f命令逐行读取文本文件
该方法适用于按行解析纯文本内容,支持跳过空行、指定分隔符及提取特定字段。for /f会将每行内容赋值给变量供后续处理。
1、新建一个名为read.bat的文本文件,用记事本打开。
2、输入以下内容:for /f “delims=” %%i in (data.txt) do ( echo %%i)
3、确保当前目录下存在data.txt文件,其中包含若干行文本。
4、双击运行read.bat,控制台将逐行输出data.txt中的内容。
二、使用type命令配合重定向写入新文件
type命令可输出整个文件内容,结合>或>>符号可实现覆盖写入或追加写入,适合简单复制或拼接文本。
1、创建write1.bat,输入:type data.txt > output_new.txt
2、保存后运行,output_new.txt将被创建并完全复制data.txt的内容。
3、若要追加内容,在另一bat中写入:echo 这是新增的一行 >> output_new.txt
4、再次运行该脚本,新行将添加到output_new.txt末尾。
三、使用set /p命令读取文件首行
set /p可用于从标准输入读取单行内容,配合
1、新建read_first.bat,写入:set /p firstline=echo 第一行内容为:%firstline%
2、保存并运行,脚本将显示data.txt的第一行文本。
3、注意:该方式无法读取含空格或特殊符号的首行,且仅限首行。
四、使用findstr筛选匹配行后输出到新文件
findstr可在文本中搜索指定字符串,并将匹配结果重定向至新文件,实现条件读取与写入结合。
1、创建filter_write.bat,输入:findstr “关键词” data.txt > matched.txt
2、将“关键词”替换为实际需查找的文本,例如“error”或“success”。
3、运行后,所有含该关键词的行将被写入matched.txt。
4、如需忽略大小写,修改为:findstr /i “关键词” data.txt > matched.txt
五、使用echo与变量组合动态写入带格式的文本
通过组合echo语句与环境变量,可生成结构化内容并写入文件,适合日志记录或配置生成。
1、创建gen_log.bat,输入:set logtime=%date% %time%echo [%logtime%] 程序启动 >> app.log
2、保存后运行,当前日期时间与固定文本将追加至app.log。
3、如需写入多行,重复echo命令并使用>>,例如:echo 第二行内容 >> app.log
4、注意:中文路径或文件名可能导致乱码,建议使用英文命名

评论(0)