Windows 创建随机数是批处理文件
我的目标是用批处理文件创建一个看起来像02xxxxxxxxx的随机十六进制数。 但是我在不同的批处理文件之间传递一位数的数字时遇到了问题 顶级蝙蝠Windows 创建随机数是批处理文件,windows,batch-file,cmd,Windows,Batch File,Cmd,我的目标是用批处理文件创建一个看起来像02xxxxxxxxx的随机十六进制数。 但是我在不同的批处理文件之间传递一位数的数字时遇到了问题 顶级蝙蝠 for /f %%i in ('ran') do set b0=%%i echo %b0% 蝙蝠 @echo off SET /a A=%RANDOM%*16/32768 for /f %%i in ('tohex.bat A') do set a0=%%i echo %a0% 蝙蝠 @echo off & setlocal ENABLE
for /f %%i in ('ran') do set b0=%%i
echo %b0%
蝙蝠
@echo off
SET /a A=%RANDOM%*16/32768
for /f %%i in ('tohex.bat A') do set a0=%%i
echo %a0%
蝙蝠
@echo off & setlocal ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
set LOOKUP=0123456789abcdef &set HEXSTR=&set PREFIX=
if "%1"=="" echo 0&goto :EOF
set /a A=%*
if !A! LSS 0 set /a A=0xfffffff + !A! + 1 & set PREFIX=f
:loop
set /a B=!A! %% 16 & set /a A=!A! / 16
set HEXSTR=!LOOKUP:~%B%,1!%HEXSTR%
if %A% GTR 0 goto :loop
echo %PREFIX%%HEXSTR%
对于“tohex.bat%A%”中的/f%%i,是否设置a0=%%i?您可以始终使用良好的旧临时文件:D