3

Я искал команды start и tasklist , и я заметил 2 вещи. У них обоих были ссылки на заголовок окна.

start "myTest" /b somefile argA
tasklist /fi "WindowTitle eq myTest"

меня смущает то, что список задач не возвращает мне совпадений. Есть ли что-то, что я делаю неправильно, или они не ссылаются на одно и то же название?

2 ответа2

3

Они наверняка ссылаются на один и тот же заголовок. Это заголовок, который появляется внутри верхней границы вашего окна. Проблема в том, что ваш переключатель START /B вызывает запуск процесса в одном и том же окне консоли, и у окна может быть только один заголовок. START не меняет заголовок окна, если используется ключ /B.

Запустите команду START с ключом /B, и вы увидите, что заголовок окна не меняется.

Теперь запустите команду START без /B, и вы увидите новое окно с правильным заголовком. Ваша команда TASKLIST теперь найдет правильный процесс.

1

Попробуйте в этом примере запустить Chrome.exe и убить все его PID после запуска!

@echo off
set MyProcess=Chrome.exe
start "" %MyProcess%
setlocal EnableDelayedExpansion
for /f "TOKENS=2" %%a in ('tasklist /NH /FI "imagename eq %MyProcess%"') do (
    Set PID=%%a & echo The PID of %MyProcess% = !PID! 
    Echo( & Echo To Kill all PID of "%MyProcess%" , just Hit any key & pause 
    Taskkill /PID !PID! /F /T
)
EndLocal
pause

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .