获取终端中执行的最后一个进程的父 ID

获取终端中执行的最后一个进程的父 ID

回到这个如何找到终端中最后打开的文件的 PID?

我想知道最后执行的进程的PPID(进程的父ID)。

答案1

在同一个终端中,运行以下命令:

ps -p $! -o ppid=

答案2

这个问题比较模糊:你问的是如何获取最后执行的进程的 PPID终端,或者你问如何获取最后执行的进程的 PPID通过这样做终点站?

如果是第一个,要么我遗漏了某些东西,要么当前终端的当前内部bash实例中执行的最后一个进程的 PPID 是当前终端的当前内部bash实例 PID,它始终存储在$

echo $$

如果第二个你可以运行:

ps -e --sort -start_time -o ppid | head -5 | tail -1

答案3

在终端运行此命令:

<your_command> &
awk '{print $4}' "/proc/$\!/stat"

例如

$ gedit &                            
[1] 12130
$ awk '{print $4}' "/proc/$\!/stat"
11099
$ ps xa | grep 11099
11099 pts/0    Ss     0:01 /usr/bin/zsh

相关内容