1

Тема: CMD/BAT: определение существования процесса.

можно ли определить наличие процессов 1cv8* (может быть 1cv8.exe и 1cv8c.exe и 1cv8s.exe)
пробовал:

tasklist | find "1cv8.exe"
if errorlevel 0 goto YES
tasklist | find "1cv8c.exe"
if errorlevel 0 goto YES
tasklist | find "1cv8s.exe"
if errorlevel 0 goto YES
goto NO
:YES
taskkill /im 1cv8* /f /t
:NO
rem далее идёт скрипт

как-то элегантнее можно?

2

Re: CMD/BAT: определение существования процесса.

Просто и достаочно надежно


tasklist | find "1cv8"

Чуть гибче, но возможны (теоретически) ложные срабатывания


tasklist | findstr /b "1cv8[cs]*.exe"

Надежно, но медленно (иногда)


wmic process where "name like '1cv8%.exe'" get processid,commandline /value

А дальше анализируйте выхлоп каждой команды в цикле типа for /f и реализуйте свой алогоритм.

( 2 * b ) || ! ( 2 * b )

3

Re: CMD/BAT: определение существования процесса.

спасибо