Войти

Показать полную графическую версию : [решено] Запуск батника раз в 30 минут


Svnkill
02-04-2020, 12:21
Привет, мне нужно чтобы батник запускался раз в 30-40 минут (случайное время)

Есть батник по пути C:\star.bat

Iska
02-04-2020, 19:32
Svnkill, если пролистать созданные Вами сообщения, складывается ощущение, что Вы пытаетесь собрать майнер на пакетных файлах ;).

Зачем это:
мне нужно чтобы батник запускался раз в 30-40 минут (случайное время) »
Вам нужно?

megaloman
02-04-2020, 21:32
@Echo Off
cls
Set /A Min1=30, Min2=40
Set "Run=Z:\Soft_In\go.bat"

Set /A Sec1=%Min1%*60, Sec2=%Min2%*60
:Begin
Set /A SecRND=%Random%%%(Sec2-Sec1+1)+Sec1
Start "" "%Run%"
TimeOut /T %SecRND%
GoTo :Begin

v79italya
03-04-2020, 15:06
megaloman, а это тоже bat?
Как пользоваться? Один раз запустить после включения компьютера?

megaloman
03-04-2020, 16:38
v79italya, Вы просили bat - Вы его получили. Это управляющий скрипт, запускается один раз и будет висеть в окне пока не завершите принудительно. Вы указываете имя запускаемого батника (или иной программы - у меня Z:\Soft_In\go.bat) этот скрипт будет запускать указанное через случайное время, не дожидаясь окончания запущенного ранее. Вы ставили задачу именно так. Подозреваю, это Вам не очень нравится - тогда: MinLow = 30 'Нижнее значение интервала запуска (мин)
MinUpp = 40 'Верхнее значение интервала запуска (мин)
PRG = "Z:\Soft_In\go.bat" ' Запускаемый батник

mSekLow = MinLow * 60 * 1000
mSekUpp = MinUpp * 60 * 1000

Comm = "CMD /C """ + PRG + """"

With CreateObject("WScript.Shell")
Do
OutRun = .Run(Comm, 1, False)
WScript.Sleep Int((mSekUpp - mSekLow + 1) * Rnd + mSekLow)
Loop
End With

v79italya
03-04-2020, 16:46
megaloman, в этой теме я ничего не просил.это Вам не очень нравится - тогда:
надо писать vbs, js или еще какой- нибудь скрипт, чтобы окно не висело на мониторе постоянно. Например, vbs » не понял совета

v79italya
03-04-2020, 16:57
я Вам наваял vbs-скрипт »хорошо, спасибо.
А нельзя чтоб видно только в трее было значок или надпись какая нибудь?
Например, запущу этот скрипт, который будет время от времени запускать другой скрипт, который делает, например, скриншоты монитора

Iska
03-04-2020, 17:49
v79italya, Вы просили bat… »
Дык, просил не он ;).

А нельзя чтоб видно только в трее было значок или надпись какая нибудь? »
У пакетных файлов и WSH нет таких средств.

megaloman
03-04-2020, 19:46
v79italya, Ну, коли не просили, а я наваял, то, если Вы не против :), попробуйте заменить в приведенном коде 1 на 7: OutRun = .Run(Comm, 7, False)
В трей не умею, но в свёрнутом виде - пожалуйста. И Ваше окно, в котором Вы работаете, при этом останется активным.

v79italya
03-04-2020, 20:02
У пакетных файлов и WSH нет таких средств »
но в свёрнутом виде - пожалуйста »спасибо. По моему, нужная вещь!




© OSzone.net 2001-2012