我希望有一个脚本,可以针对每个新的运行进程打印它的启动命令和父进程。
我使用以下探针:
我使用以下探针:
proc::posix_spawn:exec-success,proc::__mac_execve:exec-success
在脚本体内,通过curproc->p_dtrace_argv
构建命令行字符串。
父进程ID(ppid)也是可用的,但迄今为止我还没有找到如何提取父进程名称的方法(最好是从父进程argv [0]中获取的完整名称)。
exec
探针在exec-success
探针调用成功之前在旧进程的上下文中触发,因此您是否可以像这样做self->pexecname = execname;
在exec
探针下保存父执行名称,然后在exec-success
探针下检索它? - Andrew Henle