如何获取进程的补充组ID?

如何获取进程的补充组ID?

我可以使用以下命令来获取进程的有效组 ID:

ps -o pid,egid

但是如何获取进程的补充组ID呢?

答案1

在 Linux 上,这些可用于以下进程/proc/pid/status

-bash-4.2$ grep \^Groups /proc/$$/status
Groups: 6 9 11 18 100 1000
-bash-4.2$ 

通读proc(5)手册以了解各种/proc文件中存储的内容可能会很有用。

答案2

手册页有这些格式说明符:

supgid      SUPGID    group ids of supplementary groups, if any.  See getgroups(2).     
supgrp      SUPGRP    group names of supplementary groups, if any.  See getgroups(2).

所以,ps -o supgid等等。虽然如果您supgrp与其他一些列一起使用,但默认宽度可能不适合所有组(如果有很多组),因此您可能需要加宽它,例如
ps -o pid,supgrp:100,args

相关内容