Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Поочередный запуск bat

Ответить
Настройки темы
CMD/BAT - Поочередный запуск bat

Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день! Прошу помощи в решении следующей задачи: у меня есть два батника, которые в свою очередь запускают exeшник с бесконечным циклом выполнения, как я понимаю, мне нужен третий батник, который будет запускать первый, через 5 минут его завершать и запускать второй, так же на пять минут, потом опять первый, и так по бесконечному циклу. третий день пытаюсь найти решение, но к сожалению моим мозгам это не под силу, понимаю что решение скорее всего очень просто, заранее спасибо и извините за глупые вопросы.

Отправлено: 14:03, 02-06-2021

 

Ветеран


Contributor


Сообщения: 2732
Благодарности: 1698

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@Echo Off
:Begin
	Call "D:\CMD_Forum\я210602_01.bat" 300 
	Call "D:\CMD_Forum\я210602_02.bat" 300 
GoTo :Begin
я210602_01.bat
Код: Выделить весь код
@Echo Off
	rem ...............
	rem ...............
	rem ...............
	rem ...............
	>Nul (
		Start " " "C:\Windows\System32\notepad.exe"
		TimeOut /T %~1  
		TASKKILL /IM "notepad.exe"
	)
Exit /B
я210602_02.bat
Код: Выделить весь код
@Echo Off
	rem ...............
	rem ...............
	rem ...............
	rem ...............
	>Nul (
		Start " " "C:\Windows\System32\calc.exe"
		TimeOut /T %~1  
		TASKKILL /IM "calc.exe"
	)
Exit /B

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 15:33, 02-06-2021 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 1274
Благодарности: 564

Профиль | Отправить PM | Цитировать


smvit,
если фиксировано время и мы не привязаны к работе конкретно программы. то поручите это дело планировщику
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:29, 02-06-2021 | #3


Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Отправить PM | Цитировать


alpap,
с планировщиком у меня не получилось, там минимальное время до завершения процесса 30 минут, либо я не понял как с ним справиться. И конкретное время запуска для меня не имеет значения, мне нужно один раз запустить алгоритм и пусть живет своей жизнью постоянно, а с планировщиком, если я правильно понял, придется очень много задач создавать

megaloman,
большое спасибо, завтра буду пробовать.
Попутный вопрос, у Вас в первом батнике timeout 1, значит если мне нужно что бы он закрылся через 5 минут поменять единицу на 300? или так оставить?

Отправлено: 18:57, 02-06-2021 | #4


Ветеран


Contributor


Сообщения: 2732
Благодарности: 1698

Профиль | Отправить PM | Цитировать


smvit,
Цитата megaloman:
Call "D:\CMD_Forum\я210602_01.bat" 300 »
Цитата megaloman:
TimeOut /T %~1 »
Батники запускаются с параметром, в данном случае 300. Это 300 секунд. В батнике вызывается Timeout с полученным параметром %~1. Можно было написать %1, но привычка ... Это не 1 сек, это именно значение полученного параметра, как договорились - передали 300 сек. Надо другое время - меняйте 300 на нечто другое в вызове батников.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 19:08, 02-06-2021 | #5


Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Отправить PM | Цитировать


megaloman,
Понял, благодарю. Завтра опробую, отпишусь как получилось.

И еще один момент, до того, как мне понадобилось использовать два батника по-очереди, я запускался одним в скрытом режиме через vbs с таким содержанием:
Код: Выделить весь код
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run chr(34) & "C:\4.bat" & Chr(34), 0
Set WshShell = Nothing
могу ли я вот этот запустить так же? То есть весь процесс запуска всех этих батников будет так же скрыт как и в случае с изначальным вариантом?
Цитата megaloman:
@Echo Off
:Begin
Call "D:\CMD_Forum\я210602_01.bat" 300
Call "D:\CMD_Forum\я210602_02.bat" 300
GoTo :Begin »

Отправлено: 19:12, 02-06-2021 | #6


Ветеран


Contributor


Сообщения: 2732
Благодарности: 1698

Профиль | Отправить PM | Цитировать


smvit, vbs
Код: Выделить весь код
With CreateObject("WScript.Shell")
    Do
        Ret = .Run("""D:\CMD_Forum\я210602_01.bat"" 300", 0, True)
        Ret = .Run("""D:\CMD_Forum\я210602_02.bat"" 300", 0, True)
    Loop
End With

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 02-06-2021 в 20:11.

Это сообщение посчитали полезным следующие участники:

Отправлено: 19:59, 02-06-2021 | #7


Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Отправить PM | Цитировать


megaloman,
Доброго дня. Вариант с тремя батниками сработал как нужно, огромное спасибо!
Но через vbs не получилось. Запускаю и ничего не происходит, пробовал своим первым способом через vbs запустить основной батник, скрывается только он, остальные два по очереди так и висят на видном месте, может еще что-то можно попробовать?

Отправлено: 09:59, 03-06-2021 | #8


Ветеран


Contributor


Сообщения: 2732
Благодарности: 1698

Профиль | Отправить PM | Цитировать


smvit, переименуйте свой vbs в файл с расширением txt и прикрепите к сообщению. Дайте посмотреть именно файл.
Кстати, вариант с запуском общего батника из-под VBS тоже работает
Код: Выделить весь код
With CreateObject("WScript.Shell")
        Ret = .Run("""D:\CMD_Forum\я210602_00.bat""", 0, False)
End With
Но: «Не следует множить сущее без необходимости» - зачем еще один батник, если сразу работает VBS? Надо докопаться до причины.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 03-06-2021 в 10:18.

Это сообщение посчитали полезным следующие участники:

Отправлено: 10:02, 03-06-2021 | #9


Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Отправить PM | Цитировать


Вложения
Тип файла: txt vbs.txt
(160 байт, 4 просмотров)

vbs

Отправлено: 10:51, 03-06-2021 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Поочередный запуск bat

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
VBS/WSH/JS - Поочередный запуск макросов MS Word из vbs Sergey.l Скриптовые языки администрирования Windows 3 09-04-2018 05:48
CMD/BAT - Поочередный запуск программ и команд adios85 Скриптовые языки администрирования Windows 9 20-09-2016 19:29
CMD/BAT - Как настроить последовательный запуск bat-файлов в другом bat. codi28 Скриптовые языки администрирования Windows 12 27-11-2013 18:30
CMD/BAT - Запуск BAT файла с правами локального пользователя из сетевого BAT файла Yurii_L Скриптовые языки администрирования Windows 9 05-09-2012 14:27
CMD/BAT - [решено] Запуск bat-файла от имени админа.Как сделать каталог этого bat-файла текущим?? axmed0207 Скриптовые языки администрирования Windows 1 19-01-2012 06:14




 
Переход