使用批处理编辑(查找和替换).ini文件

时间:2015-10-19 23:55:52

标签: batch-file edit ini

我已经搜索了这个问题的答案,我还没有理解解决方案。我正在尝试使用批处理查找和替换.ini文件。我想要做的就是编辑php.ini并查找字符串“5.4.3”的所有实例并将其替换为“5.6.14”。

我试图根据我在堆栈溢出时看到的答案来使用它:

`set "file=C:\wamp\bin\php\php5.6.14\php.ini"
:loop
findstr %old% "%file%" >nul || (
type "%file%"|repl "5.4.3" "5.6.14" >"%file%.tmp"
move "%file%.tmp" "%file%" >nul
)
ping -n 120 localhost >nul
goto :loop`

执行挂起,我不知道为什么。任何帮助,将不胜感激。

1 个答案:

答案 0 :(得分:1)

如果您无法向计算机添加任何内容(例如jrepl.bat),则可以使用字符串替换自行完成。我不反对jrepl.bat。 dbenham的作品通常非常好。

=== repit.bat

@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION

SET "THEFILE=C:\Users\pwatson\y\log.txt"

FOR /F "usebackq tokens=*" %%s in (`TYPE "%THEFILE%"`) DO (
    SET THESTRING=%%s
    ECHO !THESTRING:5.4.3=5.6.14!
)

EXIT /B

如果要将其保存到新文件中,请使用重定向。

CALL repit.bat >log.txt.new