如何使用C从流程状态文件中获取UID

时间:2016-02-23 13:37:26

标签: c linux

我正在尝试在/ proc //状态的进程状态文件中获取进程所属者的用户ID。我需要将这些数据转换为一个整数,以便能够得到用户实际上是谁但不知道如何。这是文件的前几行

    Name:   kworker/0:0
    State:  S (sleeping)
    Tgid:   4
    Pid:    4
    PPid:   2
    TracerPid:  0
    Uid:    0   0   0   0

我如何才能获得UID?任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:0)

您可以使用awk来解析/etc/passwd

 $ awk -F: '$3==XXXXX { print $1 }' /etc/passwd

XXXXX替换为UID。