Como eu escaparia desse caractere = sinal?
for /F "usebackq" %%b in (wmic process where ParentProcessId=%PID% get ProcessId) do (
Existem dois problemas com o acima:
-
Ao usar "usebackq"
, é necessário colocar backquotes em volta do comando a ser processado por for
.
-
É preciso haver cotações "
em torno da cláusula where
de wmic
.
Use o seguinte arquivo em lotes:
@echo off
setlocal
set PID=1188
for /F "usebackq" %%b in ('wmic process where "ParentProcessId=%PID%" get ProcessId') do (
echo %%b
)
endlocal
Exemplo de saída:
F:\test>test
ProcessId
2508
10100
ECHO is off.
Nota:
- A linha
ECHO is off.
é gerada porque wmic
gera uma linha final em branco.
Leitura Adicional