Как установить RANDOM в командном файле?
Итак, я написал этот командный файл.
Мне нужно использовать какую-то случайную функцию, чтобы выбрать между 9 . EXE-файлов.
Одним из этих файлов.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
2 ответа
Решение
set /a executable=(%random% %% 9) + 1
set "executablename=OPTION%executable%.exe"
echo %executablename%
должен показать вам случайное имя исполняемого файла OPTION1.exe
.. OPTION9.exe
Ну, есть несколько улучшений, которые вы можете внести в код, который вы предоставили. Вот модифицированный код:
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