Я пишу пакетный сценарий для чтения значений свойства, которое передается в качестве аргумента пакетному сценарию во время выполнения.
У меня есть файл свойств (Input.properties) с записями ниже.
APP1_NAME=common1
APP1_PATH=path1\val\test
APP1_VERSION=1.0
APP2_NAME=common2
APP2_PATH=path2\val\test
APP2_VERSION=2.0
APP3_NAME=common3
APP3_PATH=path3\val\test
APP3_VERSION=3.0
У меня есть пакетный скрипт (Read.bat), которому $ {APP} передается аргумент со значением 3 APP1 / APP2 / APP3. Я пытаюсь прочитать значение определенного свойства на основе переданного значения и сохранить его в переменной и использовать его для дальнейшего. Допустим, мы передаем APP1 в файл Read.bat, чтобы иметь возможность читать NAME, PATH и VERSION APP1.
Я попробовал ниже, что работает, если я хочу прочитать значение, передавая статическое свойство, но я смотрю, что-то работает, если часть имени свойства передана как значение переменной.
@echo off
setlocal enabledelayedexpansion
for /f "tokens=1,* delims== " %%i in (Input.properties) do (
echo %APP1_NAME%
)
Ожидается, если мы передадим APP2 в качестве аргумента в Read.bat
Мы должны быть в состоянии прочитать значение APP2_NAME и сохранить его в переменной, прочитать значение APP2_PATH и сохранить его в другой переменной для дальнейшего использования.