如何通过WMI库根据进程PID获取其PPID及进程名
根据PID获取PPID及对应进程名的实现方案
Linux/Unix 类系统
直接命令行查询
用ps命令可以直接输出目标PID的PPID和进程名:
# 替换$SELECTED_PID为你已获取的PID变量 ps -o ppid=,comm= -p $SELECTED_PID
参数说明:
-o ppid=,comm=指定输出列,ppid=表示输出PPID且不显示列标题,comm=表示输出进程名-p $SELECTED_PID指定要查询的目标进程PID
也可以通过/proc文件系统读取内核实时数据,效率更高:
cat /proc/$SELECTED_PID/status | grep -E '(PPid|Name)'
脚本中封装使用
如果要在脚本里把结果存入变量后续使用:
# 假设你的PID变量是$SELECTED_PID SELECTED_PID=1234 # 提取PPID并去除多余空格 PPID=$(ps -o ppid= -p $SELECTED_PID | tr -d ' ') # 根据PPID获取父进程名 PP_PROC_NAME=$(ps -o comm= -p $PPID) # 输出结果 echo "所选进程PID: $SELECTED_PID" echo "父进程PPID: $PPID" echo "父进程名: $PP_PROC_NAME"
Windows 系统
CMD 命令行方式
使用wmic工具查询:
# 替换%SELECTED_PID%为你的PID变量 wmic process where processid=%SELECTED_PID% get parentprocessid, name
PowerShell 方式
PowerShell的对象化操作更简洁直观:
# 替换$selectedPID为你的PID变量 $selectedPID = 1234 # 获取目标进程对象 $targetProc = Get-Process -Id $selectedPID # 获取父进程对象 $parentProc = Get-Process -Id $targetProc.Parent.Id # 输出结果 Write-Host "所选进程PID: $selectedPID" Write-Host "父进程PPID: $($parentProc.Id)" Write-Host "父进程名: $($parentProc.Name)"
内容的提问来源于stack exchange,提问作者aviv ben shaul
相关产品推荐
相关产品推荐

