Только один экземпляр партии

Только один экземпляр партии

Я нашел этот скрипт здесь, он отлично работает, но проблема в том, что я хотел бы задать путь, где хранится этот файл блокировки, например D:\mylogs. Но этот скрипт создает журнал там, где он запускается, и это не нормально. Есть ли помощь, чтобы изменить этот скрипт, чтобы я мог выбрать свою собственную папку для файлов блокировки?

Как предотвратить повторный запуск одного и того же пакетного файла, чтобы разрешить только один экземпляр?

Как изменить этот код, чтобы я мог выбрать, где создать файл locl. Потому что теперь он создается там, где запускается скрипт, но я хочу, чтобы файл lock находился в моей папке, например D:\script Может ли кто-нибудь помочь?

:init
set "started="
2>nul (
 9>"%~f0.lock" (
  set "started=1"
  call :start
 )
)
@if defined started (
    del "%~f0.lock" >nul 2>nul
) else (
    echo Process aborted: "%~f0" is already running
    @ping localhost > nul
)

exit /b




:start
cd /d %~dp0
:: REST OF THE SCRIPT

Связанный контент