我正在我的Windows 7系统上安装产品,我需要在文本文件中搜索一行,在组件文件夹中按名称IRU_install.properties搜索一行我必须搜索一行licenseType = LICR并且需要附加一行" licenseAccepted = 9"在属性文件中找到该行之后。我不想提示用户,因为安装需要通过批处理脚本和静默安装过程。
答案 0 :(得分:1)
您可以使用findstr
命令查找文件中的文本。请参阅下面的示例:
findstr /m "licenseType=LICR" IRU_INSTALL.properties
if %errorlevel%==0 (
echo Line found!
)
这将找到指定文件中指定的字符串。 /m
开关告诉命令仅在匹配时打印文件名。使用findstr /?
了解更多信息。
至于附加文本,批处理可能会非常困难,但可以这样做。
见下面的代码:
@ECHO OFF
(
FOR /F "tokens=*" %%A IN (IRU_install.properties) DO (
ECHO %%A
IF "%%A" EQU "licenseType=LICR" (
ECHO licenseAccepted=9
)
)
) >output.txt
move /y output.txt IRU_install.properties
这样做是使用FOR
命令迭代文件中的行,如果当前行等于所需行,则将许可接受行输出到'output.txt'文件。然后将其中的所有文本移动到.properties
文件。