Batch file 忽略批处理文件中以#开头的处理行

Batch file 忽略批处理文件中以#开头的处理行,batch-file,cmd,Batch File,Cmd,我有一个名为“props.txt”的属性文件,其值如下- test=props #test2=props 我编写了一个批处理脚本,将这些属性放入Windows 10环境变量中,如下所示: #@ECHO OFF For /F "tokens=1* delims==" %%A IN (props.txt) DO ( IF NOT "%A:~0,1%"=="#" ( SETX "%%A" "%%B" ) ) 现在,所有属性都被放入环境变量中,即使它们以“#”开头

我有一个名为“props.txt”的属性文件,其值如下-

test=props
#test2=props
我编写了一个批处理脚本,将这些属性放入Windows 10环境变量中,如下所示:

#@ECHO OFF
For /F "tokens=1* delims==" %%A IN (props.txt) DO (

    IF NOT "%A:~0,1%"=="#" (
        SETX "%%A"  "%%B"
    )
)
现在,所有属性都被放入环境变量中,即使它们以“#”开头。我想忽略以“#”开头的属性。我该怎么做? 另外,我想跳过空行。是否需要进行任何更改?

您可以使用
EOL=#
它跳过以
#
开头的所有行,默认值为
EOL=
对于/F
总是跳过空行,如果您愿意,获取它们是一个问题

For /F "tokens=1* EOL=# delims==" %%A IN (props.txt) DO (
    ...

您能否告诉我,在将键和值放入环境变量之前,是否有任何简单的方法来修剪它们?@N。。请看一看,这也适用于变量您无法对
标记变量的
执行字符串操作。必须首先将其指定给环境变量。