从某个文件夹启动随机批处理文件

时间:2015-09-25 08:43:22

标签: windows batch-file random cmd

问题是,我有一个名为" abc"的文件夹。有几个批处理文件,它们的名称如下:

  

abc1.bat
  abc2.bat
  abc3.bat
  abc4.bat

依旧......

我需要一个脚本,当我点击它时会随机启动其中一个批处理文件。我需要的脚本将以名称" abcRandom.bat"存储在同一文件夹中。或类似的东西。

2 个答案:

答案 0 :(得分:3)

@echo off
setlocal EnableDelayedExpansion & set n=0
for /f "delims=" %%a in ('dir /b /A-D "*.bat"') do (
   (echo "%%a" | FIND /I "%~nx0" 1>nul) || (
       set "f=%%a" & set "f[!n!]=!f!" & set /a "n+=1"
   )
)
set /a c=%random% %% n
echo start !f[%c%]!

您可以从https://stackoverflow.com/a/32700063/4070433

了解其工作原理

答案 1 :(得分:1)

假设1000是您的abcX.bat文件的编号。然后这将解决问题:

SET /a rand=%RANDOM%*1000/32768+1
CALL abc%rand%.bat