我需要编辑一个ini文件,用一个新的目标文件夹替换里面的一行。
我需要它去一条新路。我尝试了一些类似的搜索但却无法让它独立完成。这是我尝试过的,没有发生任何事情:
@echo off
set "file=C:\Users\Test\AppData\Roaming\OBS\profiles\Test.ini"
if exist "%file% (
findstr /v /i "SavePath=" "%file%" >"%file%.tmp"
>>"%file%.tmp" echo/SavePath=C:\test\backup\backup.flv
move /y "%file%.tmp" "%file%" >nul
)
答案 0 :(得分:0)
这是我每天用于某些模板的批处理文件的一个exerpt。它将使用文件顶部定义的新search
字符串替换指定的replace
字符串:
@echo off &setlocal
set "search=c:\old\path"
set "replace=d:\new\path"
set "textfile=test.ini"
set "newfile=output.ini"
echo Scanning %textfile%
(for /f "delims=" %%i in ('findstr "." "%textfile%"') do (
set "line=%%i"
setlocal enabledelayedexpansion
set "line=!line:%search%=%replace%!"
echo(!line!
endlocal
))>"%newfile%"
看起来您已经在处理if exist
并覆盖原始文件,所以我没有包含这些内容。
希望它有所帮助!