Ответ 1
C:\> wmic process get processid,parentprocessid,executablepath|find "process id goes here"
Учитывая идентификатор процесса и доступ к командной строке на удаленном хосте Windows, как вы можете найти его родительский PID?
Учитывая ответ Marc B, мы можем использовать WMIC (примеры команд здесь) и сделать что-то вроде этого:
wmic process where (processid=PROCID_HERE) get parentprocessid
C:\> wmic process get processid,parentprocessid,executablepath|find "process id goes here"
Основываясь на решении joslinm в вопросе, здесь приведен фрагмент того, как его использовать в пакете script:
set PID=<this is the child process ID>
for /f "usebackq tokens=2 delims==" %%a in (`wmic process where ^(processid^=%PID%^) get parentprocessid /value`) do (
set PARENT_PID=%%a
)
В powershell:
PS> wmic process where '(processid=4632)' get 'processid,parentprocessid,executablepath'
ExecutablePath ParentProcessId ProcessId
C:\Program Files\Docker\Docker\Resources\com.docker.db.exe 4488 4632