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; 
    } 
  • 相关阅读:
    R-CNN/Fast R-CNN/Faster R-CNN
    RNN的介绍
    前向传播算法(Forward propagation)与反向传播算法(Back propagation)
    world转.md
    msgid 属性
    .equals()到底是什么意思?
    iperf详细使用方法
    c语言#define用法
    android源码编译出现No private recovery resources for TARGET_DEVICE解决方法
    nginx File not found 错误
  • 原文地址:https://www.cnblogs.com/guangliang/p/4358316.html
Copyright © 2011-2022 走看看