Код:
@echo off
setlocal enableextensions enabledelayedexpansion
set sValues=1,5,8,3,s,h,n
for /l %%i in (1, 1, 20) do (
call :GetRandom
call :GetValue !Random! %sValues%
echo [!Value!]
)
endlocal
exit /b 0
:GetRandom
setlocal enableextensions enabledelayedexpansion
set sOut=%~0
for /f "usebackq delims=" %%i in (
`mshta.exe "javascript:new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(Math.floor(Math.random() * 7).toString());close();" 1 ^| more`
) do (
set /a iRandom = %%i
)
endlocal & set %sOut:~4%=%iRandom%
exit /b
:GetValue
setlocal enableextensions enabledelayedexpansion
set sOut=%~0
set /a iCount = %~1
for /l %%i in (1, 1, %iCount%) do shift /2
set sValue=%~2
endlocal & set %sOut:~4%=%sValue%
exit /b