2016-12-25 2 views
0

Итак, я написал этот командный файл.Как установить RANDOM в пакетном файле?

Мне нужно использовать какую-то случайную функцию для выбора между 9 .exe fles.

Одним из этих .exe-файлов является «OPTION1.exe», поэтому мне бы хотелось, чтобы пакет выбирался из «OPTION2.exe, OPTION3.exe ...» и т. Д., Которые находятся в той же папке, что и первый.

Я хотел бы знать, если это возможно и как это сделать.

Спасибо за ваше время.

@echo off 
:loop 
TASKKILL /F /IM "Software.exe" 
TASKKILL /F /IM "Chrome.exe" 
TIMEOUT /T 5 
cd C:\Users\admin\Documents\Software 
start Software 
TIMEOUT /T 15 
start OPTION1.exe 
TIMEOUT /T 10 
start connect.exe 
TIMEOUT /T 15 
cd C:\Program Files (x86)\Google\Chrome\Application 
start Chrome.exe 
TIMEOUT /T 400 
TASKKILL /F /IM "Chrome.exe" 
TIMEOUT /T 10 
cd C:\Users\admin\Documents\Software 
start disconnect.exe 
TIMEOUT /T 15 
cls 
GOTO loop 

ответ

1
set /a executable=(%random% %% 9) + 1 
set "executablename=OPTION%executable%.exe" 
echo %executablename% 

должен показать вам случайное имя исполняемого OPTION1.exe .. OPTION9.exe

+0

Спасибо! это сработало! –

0

Ну есть несколько улучшений, которые можно внести в код вы предоставили. Вот модифицированный код:

echo off 
cls 
:loop 
TASKKILL /F /IM Software.exe 
TASKKILL /F /IM Chrome.exe 
TIMEOUT /T 5 
cd C:\Users\admin\Documents\Software 
start Software.exe 
TIMEOUT /T 15 
start OPTION1.exe 
start OPTION2.exe 
start OPTION3.exe 
TIMEOUT /T 10 
start connect.exe 
TIMEOUT /T 15 
cd C:\Program Files (x86)\Google\Chrome\Application 
start Chrome.exe 
TIMEOUT /T 400 
TASKKILL /F /IM Chrome.exe 
TIMEOUT /T 10 
cd C:\Users\admin\Documents\Software 
start disconnect.exe 
TIMEOUT /T 15 
cls 
GOTO :loop 
+0

Это тот же самый код, вы только добавили start + .exe файлы .. –

Смежные вопросы