当前位置: 技术问答>linux和unix
如何通过PID 获取username?
来源: 互联网 发布时间:2017-02-02
本文导语: RT Mac 系统下, 我通过 getpid 获取到进程的pid, 现在想通过这个pid来获取 username。 刚开始 我是通过 popen(“ps -o pid= pidnum”“r”)这样似乎是可以获取到进程的user,但是在mac 10.4下打印出来的却是空的...
RT
Mac 系统下, 我通过 getpid 获取到进程的pid, 现在想通过这个pid来获取 username。
刚开始 我是通过 popen(“ps -o pid= pidnum”“r”)这样似乎是可以获取到进程的user,但是在mac 10.4下打印出来的却是空的。
请教一下,还有什么办法获取???????
Mac 系统下, 我通过 getpid 获取到进程的pid, 现在想通过这个pid来获取 username。
刚开始 我是通过 popen(“ps -o pid= pidnum”“r”)这样似乎是可以获取到进程的user,但是在mac 10.4下打印出来的却是空的。
请教一下,还有什么办法获取???????
|
那换个方式,mac我不是很确认
RHEL的话,你可以读取/proc/pidnum/att目录的属主,就能知道该pidnum的username了
例如:
ps -ef
UID PID PPID C STIME TTY TIME CMD
501 3266 1 2 Feb08 ? 00:26:52 /usr/local/bin/memcached -p 11211 -d -u memcached -v
ls -ld /proc/3266/attr
dr-xr-xr-x 2 memcached memcached 0 02-08 16:47 /proc/3266/attr
RHEL的话,你可以读取/proc/pidnum/att目录的属主,就能知道该pidnum的username了
例如:
ps -ef
UID PID PPID C STIME TTY TIME CMD
501 3266 1 2 Feb08 ? 00:26:52 /usr/local/bin/memcached -p 11211 -d -u memcached -v
ls -ld /proc/3266/attr
dr-xr-xr-x 2 memcached memcached 0 02-08 16:47 /proc/3266/attr
|
你看到我的回复里面有个-f哈?mac下面有-f吗?