分类:
2008-11-26 18:05:18
8.15 user identification
所谓user identification就是在一个程序里找到我们究竟当前用户是哪个?用户名是哪个?
当然可以通过getuid来得到当前用户的id,但是由于一个用户可以有多个login name,也就是说在passwd文件里,可以有多个loginname,对应一个user id,这样就可以让同一个用户有多个用户名,而且各自使用不同的登陆shell。
Getpwuid(uid)只能获取一个uid对应的项,而如果一个 uid对应了多个项的时候,这个方法就不灵了。
Char* Getlogin()可以获得当前登录的用户的名字。
LOGNAME变量一般在login进程启动后设置,但是由于是环境变量可以被更改,所以不建议使用它。