Войти

Показать полную графическую версию : [решено] Загрузка списка из txt в bat-файл и выбор из этого списка для запуска


DmitriySC
18-03-2022, 09:59
День добрый.
Нужна помощь. Самостоятельно не могу осилить обработку файла.
Суть задачи:
рядом с bat-файлом лежит txt. Содержимое следующего формата:
Name_1;IP_address_1
Name_2;IP_address_2
и т.д.

Нужно:
В bat-файле отобразить нумерованный список для выбора пользователем формата:
1 Name_1 IP_address_1
2 Name_2 IP_address_2
и т.д.
Для дальнейшего использования переменной IP_address_n в bat-файле.

megaloman
18-03-2022, 11:28
@Echo Off
Set "FileIp=Z:\Box_In\ip.txt"

FOR /F "usebackq skip=2 tokens=1,2,3 delims=[];" %%i In (`2^>nul find /N ";" "%FileIp%"`) DO (
Set /A Num@=%%i+10000
Set "Num= %%i"
Call Set "@@Num%%Num@%%=%%Num:~-3%% %%k %%j
Call Set "@@Adress%%Num@%%=%%k"
)

:Begin
Set /A User=0
cls
FOR /F "usebackq tokens=2 delims==" %%i In (`2^>nul Set "@@Num"`) DO Echo %%i
Set /P User=---------------- Выбирайте по порядковому номеру. 0-завершить работу ^>
If "%User%"=="0" Exit /B
Set /A i=10000+%User%
1>nul 2>&1 Call Set "@@Num%%i%%"||(Echo !!! Неверный номер "%User%" !!! &Pause &GoTo :Begin)
Call Set "IP_address_n=%%@@Adress%i%%%"

Echo %IP_address_n%

Pause
Exit /B

DmitriySC
18-03-2022, 14:03
Нижайший поклон.




© OSzone.net 2001-2012