База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как в PowerShell запустить программу, если она не запущена? › RE: Как в PowerShell запустить программу, если она не запущена?

Привет! Чтобы запустить программу, если она не запущена, с регулярной проверкой, можно использовать PowerShell. Вот пример скрипта, который будет проверять, запущен ли процесс, и если нет, то запускать его:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
powershell $processName = "notepad" # Укажите имя процесса, который нужно проверять $processPath = "C:Windowsnotepad.exe" # Укажите полный путь к исполняемому файлу while ($true) { # Проверяем, запущен ли процесс $proc = Get-Process -Name $processName -ErrorAction SilentlyContinue if (-not $proc) { # Если процесс не запущен, запускаем его Start-Process $processPath } # Ждем 60 секунд перед следующей проверкой Start-Sleep -Seconds 60 } |
Этот скрипт будет бесконечно проверять, запущен ли процесс с именем notepad
. Если он не запущен, скрипт запустит его. Проверка будет происходить каждые 60 секунд.
Чтобы запустить этот скрипт, сохраните его в файл с расширением .ps1
и выполните его через PowerShell.
Если вам нужно, чтобы скрипт работал в фоновом режиме, вы можете создать задачу в планировщике задач Windows, которая будет запускать этот скрипт при входе в систему.
Рекомендую посмотреть здесь: https://winitpro.ru/index.php/2020/11/23/powershell-perezapusk-prilozheniya-pri-sboe/