首页 > 代码库 > Linux下的C程序:获取用户信息和主机信息
Linux下的C程序:获取用户信息和主机信息
Linux下获取用户信息和主机信息程序
程序代码:
#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/types.h> #include <pwd.h> #include <sys/utsname.h> void main() { printf("当前用户 %s\n", getlogin()); printf("uid=%d, gid=%d\n", getuid(), getgid()); struct passwd *pw; //当前用户信息 pw = getpwuid(getuid()); printf("name=%s, uid=%d, gid=%d, home=%s, shell=%s\n", pw -> pw_name, pw -> pw_uid, pw -> pw_gid, pw -> pw_dir, pw -> pw_shell); //tsybius用户信息 pw = getpwnam("tsybius"); printf("name=%s, uid=%d, gid=%d, home=%s, shell=%s\n", pw -> pw_name, pw -> pw_uid, pw -> pw_gid, pw -> pw_dir, pw -> pw_shell); //root用户信息 pw = getpwnam("root"); printf("name=%s, uid=%d, gid=%d, home=%s, shell=%s\n", pw -> pw_name, pw -> pw_uid, pw -> pw_gid, pw -> pw_dir, pw -> pw_shell); printf("==============\n"); //获取主机信息 char computer[256]; struct utsname uts; if (gethostname(computer, 255) != 0 || uname(&uts) < 0) { fprintf(stderr, "无法获取主机信息\n"); exit(EXIT_FAILURE); } printf("HOST NAME:[%s]\n", computer); printf("操作系统: [%s]\n", uts.sysname); printf("硬件类型: [%s]\n", uts.machine); printf("主机名: [%s]\n", uts.nodename); printf("VERSION: [%s]\n", uts.version); printf("RELEASE: [%s]\n", uts.release); exit(EXIT_SUCCESS); }
运行结果:
END
Linux下的C程序:获取用户信息和主机信息
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。