设为首页 加入收藏

TOP

技巧分享 实现Linux的whoami命令
2014-11-23 23:26:47 来源: 作者: 【 】 浏览:12
Tags:技巧 分享 实现 Linux whoami 命令

Linux下的whoami命令会显示当前的用户是谁,也就是显示自己的用户名。开始我一直想从utmp文件入手,但是总不知道怎么确定自己,后来我去群里问了,他们说每个进程都有用户ID,而用户ID可以通过geteuid系统函数获得,有了ID就好办了,下面是怎么将他转化成一个用户名,用utmp?没有uid这个数据,后来知道是查找/etc/passwd这个文件,自己写查找代码很麻烦,还好有个系统调用可以解决这个问题,它帮我们查找passwd文件,我们只要给出id就可以了


struct passwd* getpwuid(uit_t id)


这样,实现起来就超 easy了


#include
#include
#include
#include


int
main()
{
uid_t id;
struct passwd* pbuf;
id=geteuid();
pbuf=getpwuid(id);
printf("%s\n",pbuf->pw_name);
return 0;
}


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Java编程语言中成功实现UDP协议编.. 下一篇分享有用的Linux command

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: