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

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

Ответить
Настройки темы
CMD/BAT - [решено] Как узнать запущен ли батник или нет

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


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

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


Здравствуйте, подскажите пожалуйста как решить проблему.
Есть у меня батник с youtube-dl который я хочу что бы он работал круглосуточно.
Но иногда когда мне нужна вся полоса пропускания я его закрываю.
Хочу добавить в шедулер задание на автоматический запуск этого файла.
Проблема как сделать так что бы если батник уже запущен то не запускать его второй инстанс.
Так как на компе youtube-dl используется активно то проверка через tasklist отпадает.
Пока нашёл выход в использование cmdow но интересуюсь нет ли способа
решить проблему нативными средствами.
Впрочем узнать о не нативных способах тоже интересно. Знание сила!
Спасибо.

Отправлено: 02:53, 22-11-2020

 

Ветеран


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

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


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

Отправлено: 08:04, 22-11-2020 | #2



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

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


Ветеран


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

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


Цитата kjuoky:
добавить в шедулер задание на автоматический запуск этого файла »
Цитата kjuoky:
если батник уже запущен то не запускать его второй инстанс »
в планировщике во вкладке параметры при создания задания уже по умолчанию стоит "Не запускать второй экземпляр", поэтому ничего не требуется больше.
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:16, 22-11-2020 | #3


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


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

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


Вот это да! А я мучался
Спасибо большое!

Отправлено: 18:15, 22-11-2020 | #4


Ветеран


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

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


Да и кстати. Задача новая выполнятся-то не будет, а вот окно новое процесса вероятно будет появляться и возможно мешать. Чтобы при запущенном процессе "name.bat" и повторном его запуске чем угодно не появлялось новых процессов и окон соответственно и работал именно первый запущенный процесс этого имени, можно использовать вот такую вставку в bat который будет запускаться:
Код: Выделить весь код
@echo off
:: Проверка на запущенный процесс "%~nx0" [отсюда и до строки :: Рабочий код ничего не изменять и не трогать]

:: ----------------------------------------------
set "Processid="
for /f %%a in ('wmic process where "name='cmd.exe' and Commandline like '%%%~nx0%%' and not Commandline like '%%|%%'" get Processid /value^|find "="') do (
 set /a n+=1& if not defined Processid set "%%a"
)
if %n% gtr 1 wmic process where "name='cmd.exe' and Commandline like '%%%~nx0%%' and not Commandline like '%%|%%' and not Processid='%Processid%'" delete
:: ----------------------------------------------

:: Рабочий код
echo Hello!
:: При запущенном процессе и повторном его запуске дозаписи в файл не произойдет
echo Proba>>file.txt
pause

Последний раз редактировалось alpap, 23-11-2020 в 15:34.

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

Отправлено: 00:02, 23-11-2020 | #5


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


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

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


И ещё раз спасибо!

Отправлено: 16:42, 23-11-2020 | #6



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Как определить запущен батник от имени администратора или нет SANIOK_AV Скриптовые языки администрирования Windows 4 09-10-2014 16:47
[решено] Как узнать интергрировал ли Firewall в материнскую плату или нет? micro8 Хочу все знать 10 13-02-2011 13:44
Установка - [решено] Как узнать, корпоративная ХР или нет? Smarty Microsoft Windows 2000/XP 7 11-06-2010 21:54
Как узнать легальная копия Windows или нет nurikline Хочу все знать 2 24-05-2007 19:45
Delphi - Как в Delphi узнать, запущен ли Word или Excel Kroc Программирование и базы данных 5 27-10-2004 00:26




 
Переход