|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Как узнать запущен ли батник или нет |
|
CMD/BAT - [решено] Как узнать запущен ли батник или нет
|
Новый участник Сообщения: 8 |
Профиль | Отправить PM | Цитировать Здравствуйте, подскажите пожалуйста как решить проблему.
Есть у меня батник с youtube-dl который я хочу что бы он работал круглосуточно. Но иногда когда мне нужна вся полоса пропускания я его закрываю. Хочу добавить в шедулер задание на автоматический запуск этого файла. Проблема как сделать так что бы если батник уже запущен то не запускать его второй инстанс. Так как на компе youtube-dl используется активно то проверка через tasklist отпадает. Пока нашёл выход в использование cmdow но интересуюсь нет ли способа решить проблему нативными средствами. Впрочем узнать о не нативных способах тоже интересно. Знание сила! Спасибо. |
|
Отправлено: 02:53, 22-11-2020 |
Ветеран Сообщения: 2183
|
Профиль | Отправить PM | Цитировать Проверку работающего бантика можно сделать через маркерный файл. При закрытии бантика маркерный файл должен удаляться. При повторном запуске планировщика, батник ищет маркерный файл, если находит, то закрывается.
|
Отправлено: 08:04, 22-11-2020 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Цитата kjuoky:
Цитата kjuoky:
|
||
Отправлено: 14:16, 22-11-2020 | #3 |
Новый участник Сообщения: 8
|
Профиль | Отправить PM | Цитировать Вот это да! А я мучался
Спасибо большое! |
Отправлено: 18:15, 22-11-2020 | #4 |
Ветеран Сообщения: 1274
|
Профиль | Отправить 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
|
Профиль | Отправить PM | Цитировать И ещё раз спасибо!
|
Отправлено: 16:42, 23-11-2020 | #6 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
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 |
|