bat修改一个ini文件里的指定行下的busno参数,支持键盘
时间: 2024-03-08 16:48:30 浏览: 111
好的,我可以帮你编写一个.bat脚本来实现修改ini文件里指定行下的busno参数的功能,并且支持键盘输入。下面是.bat脚本的代码:
```batch
@echo off
set /p line_no=请输入要修改的行号:
set /p new_busno=请输入新的busno参数值:
set "file=example.ini"
set "section=section_name"
set "key=busno"
for /f "tokens=1,* delims==" %%a in ('findstr /n "^" "%file%"') do (
set "line=%%b"
setlocal enabledelayedexpansion
if "!line_no!."=="%%a." (
call set "line=%%line:[%key%]=[%new_busno%]%%"
)
echo(!line!
endlocal
) >> "%file%.new"
move /y "%file%.new" "%file%" >nul
echo 第%line_no%行下的busno参数已修改为%new_busno%
```
这个脚本会先让用户输入要修改的行号和新的busno参数值,然后通过findstr命令读取ini文件的内容,并且使用for循环逐行处理。
在循环中,它会检查当前行是否和用户输入的行号匹配,如果匹配则使用set命令来替换busno参数的值。这个set命令使用了延迟扩展变量来实现,因为我们需要在循环中动态修改变量的值。
最后,脚本会将修改后的内容写入一个新文件中,然后再将新文件重命名为原文件。这个过程可以保证原文件不会被损坏,同时也可以确保修改成功。
希望这个脚本可以帮助你完成你的需求。如果你有任何问题或需要更多的帮助,请随时联系我。
阅读全文