如何用批处理逐行读取TXT文件并转换为指定格式?
解决方案
你可以通过修改批处理脚本拆分每行字段并生成指定格式,同时将结果保存到目标文件中。以下是实现脚本:
@echo off :: 清空或创建输出文件 if exist dhcp_hosts.txt del dhcp_hosts.txt :: 逐行读取macip.txt,拆分主机名、MAC地址、IP地址 for /F "tokens=1-3" %%A in (macip.txt) do ( echo host %%A { >> dhcp_hosts.txt echo hardware ethernet %%B; >> dhcp_hosts.txt echo fixed-address %%C; >> dhcp_hosts.txt echo } >> dhcp_hosts.txt echo. >> dhcp_hosts.txt :: 每个主机块间添加空行,可选 ) echo 转换完成,结果已保存到dhcp_hosts.txt pause
关键说明:
tokens=1-3:将每行内容按空格/制表符拆分为三个部分,分别赋值给%%A(主机名)、%%B(MAC地址)、%%C(IP地址)。- 输出重定向
>>:将生成的内容追加到dhcp_hosts.txt中,开头的del命令会先删除旧文件,确保每次运行都是全新生成。 echo.:在主机块间添加空行,与你给出的示例格式一致,不需要可直接删除该行。
运行脚本后,dhcp_hosts.txt文件会生成符合要求的DHCP主机配置内容。
内容的提问来源于stack exchange,提问作者AllenHu
相关产品推荐
相关产品推荐

