我需要一个本机命令或一个轻量级简单的第三方实用程序,我可以使用它在批处理文件中设置环境变量,但将其限制为一定数量的字符。
例如:
在此输入消息(最多 28 个字符):
那么用户当然只能输入28个字符。
有任何想法吗?
谢谢!
答案1
经过一番寻找,这xcopy
似乎是最可靠的选择。
set "key="
for /f "delims=" %%A in ('xcopy /w "%comspec%" "%comspec%" 2^>nul') do if not defined key set "key=%%A"
set "key=!key:~-1!"
获取一个密钥,您可以使用它来构建输入。
if "!input:~-%length%!" == "!input!"
允许检查长度(在您的情况下为 28)。
您还可以input.bat
我编写的脚本。通过使用宏,您可以获取脚本的输出。首先声明宏:
set input=^
for %%. in (1 2) do if %%.==2 (^
for /F "delims=" %%I in ('input.bat !args!') do ^
set "result=%%I"^
) else set args=
然后你可以像这样使用它:
setlocal EnableDelayedExpansion
%input% "prompt=Password: " "length=28"
然后您可以使用该result
变量来获取您的输入。
重要的
为了定义宏延迟扩展需要已禁用。然而,在使用它时,需要延迟扩展已启用。
资源
xcopy 输入- DosTips.com
批处理宏- DosTips.com