Мне для организации моей
Какой бюджет под эту задачу? Лол.
Т.е. я правильно понял, что у тебя есть некоторое количество пар, код+значение, при вводе первого, нужно отдавать второе? Я конечно не знаю чем там твоя организация занимается, но рекомендую использовать другие средства, а не bat файлы.
Предлагаю пары код+значение вытащить в отдельный файл и организовать таким способом:
AAA00000 44567778
AAA00001 44567779
AAA00002 44567780
AAA00003 44567781
Реализация через findstr:
@echo off
::файл с кодами
set file=hackcodes.txt
::запрашиваем код
:get_code
set /P code="CODE: "
::проверяем наличие ввода
call :check_var code
::проходим по файлу
for /f "tokens=1,2" %%a in ('findstr /x /r /c:"\<%code% ".* %file%') do set result=%%b
::проверяем наличие кода иначе назад
call :check_var result
::выводим результат
echo %result%
echo.
pause
exit
:check_var
if not defined %1 (
echo INVALID CODE
goto get_code
)
exit /b
Извратский вариант:
@echo off
::setlocal enabledelayedexpansion чтобы использовать переменные в переменных
setlocal enabledelayedexpansion
::файл с кодами
set file=hackcodes.txt
::проходим по файлу
for /f "tokens=1,2" %%a in (%file%) do set "%%a=%%b"
::запрашиваем код
:get_code
set /P code="CODE: "
::проверяем наличие кода и ввода иначе назад
call :check_var code
call :check_var %code%
::выводим результат
echo !%code%!
echo.
pause
exit
:check_var
if not defined %1 (
echo INVALID CODE
goto get_code
)
exit /b
Мейл не хочет код для батника публиковать в секции кода, поэтому вот -
https://pastebin.com/rMkX0mGq и
https://pastebin.com/KxgLFUAZ