【问题标题】:Batch Random Charachters Err批量随机字符错误
【发布时间】:2020-10-20 11:06:35
【问题描述】:

我只是新的批处理开发人员,我尝试制作 16 个字符的单词生成器,但我收到了这个错误:

( Maximum setlocal recursion level reached. )

我的代码:

@Echo Off
color 0a
set /P lengthnumberuser="What length do you want your password to be?   "
pause
cls

:code
Setlocal EnableDelayedExpansion
set _RNDLength=16
set _Alphanumeric=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
set _Str=%_Alphanumeric%987654321
:_LenLoop
if NOT "%_Str:~18%"=="" SET _Str=%_Str:~9%& SET /A _Len+=9& GOTO :_LenLoop
set _tmp=%_Str:~9,1%
set /A _Len=_Len+_tmp
set _count=0
sET _RndAlphaNum=
:_loop
set /a _count+=1
sET _RND=%Random%
set /A _RND=_RND%%%_Len%
sET _RndAlphaNum=!_RndAlphaNum!!_Alphanumeric:~%_RND%,1!
if !_count! lss %_RNDLength% goto _loop
echo !_RndAlphaNum!
goto code
pause

【问题讨论】:

  • setlocal enabledelayedexpansion移出循环(最好的位置是第二行,紧随@echo off之后)

标签: batch-file


【解决方案1】:

只需删除代码末尾的goto code

请看这里:Link

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-01
    • 2020-08-08
    • 2016-09-09
    • 1970-01-01
    • 2011-09-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多