start /wait QikDesktop.exe
del /f /q lock.txt
logoff
А странность заключается в том, что когда проходить команда logoff, первый bat-ник создает файл вопреки своему таймеру. Без команды выхода из системы, файл удаляется. Это как то можно победить?
Для меня стало новостью что в виндах есть команда logoff, в виртуалку лезть лень, посему проверять не буду. Для аналогичного действия всегда использовал shutdown -l.
Однако к батникам. Первый батник использует goto, что вообще не очень красиво и чего следует избегать (не только в батниках, скорее вообще по жизни). Вместо того чтобы создавать бесконечный цикл с таймаутом в хлипком батнике, лучше бы загнать в шедулер одну строчку и отправить ее выполняться каждую минуту. Какой гешефт это будет иметь? Не будет привязки к времени отработки и прорисовки ответов от всех команд, т.о. через шедулер файл на самом деле будет создаваться раз в минуту, а не раз в 60,035 секунд (тысячные приведены для примера, не являются реальным замером). На набольшом промежутке времени это не так уж критично, но если взять хотя бы несколько часов... Ну и вопреки таймеру происходить ничего не будет.
Строчка эта, как я вижу, не только создает, еще и перезаписывает имеющуюся в этом файле информацию, но это как бы не особо критично.
Во втором батнике не вижу ничего криминального, файл удаляется потому что команда на логоф после удаления.
Для меня стало новостью что в виндах есть команда logoff, в виртуалку лезть лень, посему проверять не буду. Для аналогичного действия всегда использовал shutdown -l.
Однако к батникам. Первый батник использует goto, что вообще не очень красиво и чего следует избегать (не только в батниках, скорее вообще по жизни). Вместо того чтобы создавать бесконечный цикл с таймаутом в хлипком батнике, лучше бы загнать в шедулер одну строчку и отправить ее выполняться каждую минуту. Какой гешефт это будет иметь? Не будет привязки к времени отработки и прорисовки ответов от всех команд, т.о. через шедулер файл на самом деле будет создаваться раз в минуту, а не раз в 60,035 секунд (тысячные приведены для примера, не являются реальным замером). На набольшом промежутке времени это не так уж критично, но если взять хотя бы несколько часов... Ну и вопреки таймеру происходить ничего не будет.
Строчка эта, как я вижу, не только создает, еще и перезаписывает имеющуюся в этом файле информацию, но это как бы не особо критично.
Во втором батнике не вижу ничего криминального, файл удаляется потому что команда на логоф после удаления.
В моем случае через шедулер сделать не получиться, потому что сейчас эти батники запускаются хаотично на десятках ПК с таким же заотичным расписанием работы.
Файл lock и должен удаляться. Попробую заменить logoff, но не думаю, что проблема в этом.
тогда думаю надо сначала навести порядок, потому что вы быстрее голову поломаете с такими запусками чем с коверканием батников, тем более что я тоже поддерживаю
Цитата Elven:
лучше бы загнать в шедулер одну строчку и отправить ее выполняться каждую минуту
alpap спасибо, шедулер я сейчас загнать ну никак не могу.
Подскажите пожалуйста как через цикл for создавать файл каждую минуту? Пробовал таким способом, но работает не корректно - первый раз создает и дальше информация в файле не обновляется.
pedrosoft, обновляется (Вы это можете увидеть по дате-времени создания файла. Просто она у Вас всё время одна и та же — та, что будет на время входа в операторные скобки цикла.