BATCH CMD - 读取带有特殊字符的 INI 文件

Ren*_*rdi 3 string variables cmd dos batch-file

我正在阅读 config.ini 文件,我想使用 KEY 作为变量名,VALUE 作为 VALUE。

配置文件

fbdestination=I:\WZPDA\workingfolder\stored
emailreport=xxx@xxxx.xxx
gmailudpw=USERNAME:PASSWORD
Run Code Online (Sandbox Code Playgroud)

我正在使用:

FOR /F "tokens=1,2 delims=^=" %%A IN (config.ini) DO (SET %%A=%%B)
Run Code Online (Sandbox Code Playgroud)

一切正常,但我有一个复杂的密码问题,例如:

myusername:!myp4ssw0rd!
Run Code Online (Sandbox Code Playgroud)

如果我尝试 ECHO $gmailudpw$ 我只有:

myusername:
Run Code Online (Sandbox Code Playgroud)

有没有办法读取 !myp4ssw0rd! 作为字符串而不是变量?

谢谢

Sac*_*Dee 5

像这样尝试:

@echo off
setlocal disabledelayedexpansion
FOR /F "tokens=*" %%A IN ('type "config.ini"') DO SET %%A
echo %fbdestination%
echo %emailreport%
echo %gmailudpw%
Run Code Online (Sandbox Code Playgroud)