我在Windows上,尝试使用以下批处理文件:
@echo off &setlocal
set "search=false); // disable U"
set "replace=true); // disable U"
set "textfile=C:\Program Files (x86)\Mozilla Firefox\mozilla.cfg"
call jrepl.bat "%search%" "%replace%" /f "%textfile%" /o -
pause
更改配置文件中的一行。当我运行文件时,它说
'jrepl.bat' is not recognized as an internal or external command
。
我的批处理文件和jrepl.bat都保存到了桌面。如何获得批处理来查找jrepl?
答案 0 :(得分:0)
使用此批处理文件代码独立于执行批处理文件的当前目录是什么而工作:
@echo off
if not exist "%~dp0jrepl.bat" goto :EOF
if not exist "%ProgramFiles(x86)%\Mozilla Firefox\mozilla.cfg" goto :EOF
call "%~dp0jrepl.bat" "search=false\); // disable U" "search=true); // disable U" /F "%ProgramFiles(x86)%\Mozilla Firefox\mozilla.cfg" /O -
请参阅How to run tree command from current directory?上的答案以及那里引用的答案,以详细了解为什么Windows命令处理器在以管理员身份运行批处理文件以获取对程序文件文件夹中文件的写访问权时找不到jrepl.bat
Mozilla Firefox。
)
在正则表达式搜索字符串中具有特殊的含义。必须使用反斜杠将其转义,以将其解释为搜索字符串中的文字字符。 )
在正则表达式替换字符串中没有没有特殊的含义,因此无需在替换字符串中对其进行转义。