V!RTuE,
Код:
@Echo Off
cls
>nul Chcp 1251
Set "FileIn=Z:\Program Files\OpenVPN\easy-rsa\keys\index.txt"
If Not Exist "%FileIn%" (Echo Файл "%FileIn%" не найден. &Echo. &Pause &Exit /B 2)
Set /A y=0
FOR /F "usebackq skip=1 tokens=1,7 delims=/" %%i In ("%FileIn%") DO (
Set /A y+=1
Set "xx=%%j"
Call Set "x@@%%xx:~3%%=%%xx:~3%%"
Echo %%i| >nul 2>nul FindStr /B /I /C:"R"&&Call Set "x@@%%xx:~3%%=%%xx:~3%% [ОТОЗВАН]"
)
If %y% EQU 0 (Echo Пользовательские сертификаты не найдены. &Echo. &Pause &Exit /B 1)
Set /A y=0
FOR /F "usebackq tokens=2 delims==" %%i In (`Set "x@@"^|Sort`) DO (
Set /A y+=1
Call Set "@@%%y%%=%%i"
)
Echo Введите номер, соответствующий сертификату, который требуется отозвать (Enter - завершение работы):
Echo.
FOR /L %%i In (1,1,%y%) Do (Set "xx= %%i"&Call Echo %%xx:~-4%%. %%@@%%i%%)
:Begin
Echo.
Set "NN="
Set /P NN=Выбираем номер N=
If "%NN%"=="" Exit /B 0
If 1 LEQ %NN% If %NN% LEQ %y% (Call Set "Select=%%@@%NN%%%" &GoTo :End)
Echo Введено неверное значение "%NN%", введите верное: &GoTo :Begin
:End
Echo вы выбрали: "%Select%"
pause
Exit /B