Board logo

标题: [文本处理] 批处理如何替换ini文件指定行内容? [打印本页]

作者: wwwcd8703    时间: 2022-9-9 16:01     标题: 批处理如何替换ini文件指定行内容?

求一个ini文件固定行第53行文件替换,原有行内容是变量,执行后变为“busno=1000”,因其它行也有此变量,只改变此行的bat,大神们跪求
作者: flashercs    时间: 2022-9-9 16:16

  1. @echo off
  2. cd /d "%~dp0"
  3. (
  4.   for /f "tokens=1* delims=:" %%A in ('type 1.ini^|findstr /n .*') do (
  5.     if %%A equ 53 (
  6.       echo,busno=1000
  7.     ) else (
  8.       echo,%%B
  9.     )
  10.   )
  11. )>"%temp%\~gprex~"
  12. move /y "%temp%\~gprex~" 1.ini
  13. pause
复制代码

作者: hfxiang    时间: 2022-9-9 19:48

如不介意使用第3方工具sed( http://bcn.bathome.net/tool/4.8/sed.exe ),如下代码即可实现(前提是test.ini为ANSI格式):
  1. sed "53s/.*/busno=1000/" -i test.ini
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2