Я пытаюсь написать одну строку CMD команду, которая:Построить CMD команду для извлечения PID из TaskList и использовать условие на результат
- выполнить
tasklist
с PID фильтра - итерацию по выходу
- сделать что-то, если PID нашли
- сделать что-то еще, если PID не был найден
Так я прочитал How to extract a specific field from output of tasklist on the windows command line и использовал этот answer построить эту команду:
for /f "tokens=2 delims=," %F in ('tasklist /nh /fi "PID eq 5284" /fo csv') do if %F NEQ "5284" (@echo no) else (@echo yes)
я не получил ожидаемого результата. Скорее всего, синтаксис был неправильным.
Команда цикла выполняется только в том случае, если существует PID 5284. Попробуйте это: '(for/f" tokens = 2 delims =, "% F in ('tasklist/nh/fo csv/fi" PID eq 5284 "') do @echo yes) || @echo no'. – eryksun
@eryksun Это здорово. отправьте ответ, и я соглашусь. 10x – idanshmu