zoukankan      html  css  js  c++  java
  • getpwuid()函数

    linux getpwuid 得到指定用户信息
    和系统数据相关的passwd 结构 
    和系统数据相关的一个结构passwd定义如下 
    /* The passwd structure.      */ 
    struct passwd 
    { 
          char *pw_name;       /* 用户名*/ 
          char *pw_passwd;     /* 密码.*/ 
          __uid_t pw_uid;      /* 用户ID.*/ 
          __gid_t pw_gid;      /*组ID.*/ 
          char *pw_gecos;      /*真实名*/ 
          char *pw_dir;        /* 主目录.*/ 
          char *pw_shell;      /*使用的shell*/ 
    }; 
    该结构描述了/etc/passwd的文件记录行 包括用户名 密码 用户ID 用户组ID 真实姓名 用户主目录和默默认SHELL 
    相关的API有 
    struct passwd *getpwuid(uid uid) 
    struct paswd *getpwnam(const char *name) 
    getpwuid 根据传入的用户ID返回指向passwd的结构体 该结构体初始化了里面的所有成员 
    getpwnam 和getpwuid一样 只是传入的参数是用户名 
    小试牛刀:这个程序只是作演示并没有作错误处理 
    #include <stdio.h> 
    #include <stdlib.h> 
    #include <sys/types.h> 
    #include <sys/stat.h> 
    #include <fcntl.h> 
    #include <unistd.h> 
    #include <pwd.h> 
    int main (void) 
    { 
           struct passwd *passwd; 
           passwd=getpwuid(getuid()); 
           /** passwd=getcwnam("phpos"); **/ 
           printf("Username:%s/n",passwd->pw_name); 
           printf("Password:%s/n",passwd->pw_passwd); 
           printf("uid:%d/n",passwd->pw_uid); 
           printf("gid:%d/n",passwd->pw_gid); 
           printf("shell:%s/n",passwd->pw_shell); 
           printf("dir:%s/n",passwd->pw_dir); 
           return 0; 
    } 
  • 相关阅读:
    IL查看泛型
    IL查看委托
    IL查看override
    为VS集成IL环境
    HashTable Dictionary HashMap
    C#集合类
    Resharper团队协作之TODO
    怪物彈珠Monster Strike 攻略
    [Editor]Unity Editor类常用方法
    C# Reflection BindingFlags
  • 原文地址:https://www.cnblogs.com/guangliang/p/4358316.html
Copyright © 2011-2022 走看看