linux-C获得用户信息和节点信息

#include <unistd.h>
#include <sys/utsname.h>
#include <sys/types.h>
#include <pwd.h>
int main(void){//
    char hname[256];//节点名称
	 struct utsname uts;//节点结构信
    uid_t uid;
    gid_t gid;
           struct passwd *pw;

	 if (gethostname(hname,255)!=0||uname(&uts)<0){
       printf("不能得到主机信息");
                  exit(1);
         }

  printf("主机名:%s\n",hname);
  printf("系统名称:%s\n 机器名称:%s\n",uts.sysname,uts.machine);
  printf("节点名称:%s\n",uts.nodename);
  printf("版本:%s,版本号%s",uts.release,uts.version);//系统版本,版本号
    //取得当前用户登陆情况
     uid=getuid();
     gid=getgid();
     pw=getpwuid(uid);
     printf("用户id 为%d,用户组为%d\n",uid,gid);
     printf("用户真实姓名%s\n用户名称:%s\n",pw->pw_gecos,pw->pw_name);
     printf("用户uid:%s\ngid:%s\n",pw->pw_uid,pw->pw_gid);           
     printf("主目录:%s\n",pw->pw_dir);             
     printf("用户shell:%s\n",pw->pw_shell);     

}

 运行:

# gcc -o test7 test7.c
test7.c: In function ‘main’:
test7.c:13: warning: incompatible implicit declaration of built-in function ‘printf’
test7.c:14: warning: incompatible implicit declaration of built-in function ‘exit’
test7.c:17: warning: incompatible implicit declaration of built-in function ‘printf’
# ./test7
主机名:puppypc
系统名称:Linux
 机器名称:i686
节点名称:puppypc
版本:2.6.30.5,版本号#1 SMP Tue Sep 1 15:48:26 GMT-8 2009用户id 为0,用户组为0
用户真实姓名root
用户名称:root
用户uid:(null)
gid:(null)
主目录:/root
用户shell:/bin/sh
用户密码:x
#

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要查看Linux节点信息,可以使用以下命令: 1. uname -a:显示Linux系统的内核版本、主机名、操作系统类型等信息。 2. cat /etc/issue:显示Linux系统的发行版本信息。 3. cat /proc/cpuinfo:显示CPU的详细信息,包括型号、速度、缓存等。 4. cat /proc/meminfo:显示系统内存的详细信息,包括总内存、可用内存、缓存等。 5. df -h:显示磁盘空间的使用情况。 6. free -m:显示系统内存的使用情况。 7. lspci:显示PCI设备的详细信息。 8. lsusb:显示USB设备的详细信息。 9. ifconfig:显示网络接口的详细信息,包括IP地址、MAC地址等。 10. netstat -rn:显示网络路由表的详细信息。 以上是常用的Linux节点信息查看命令,可以根据需要选择使用。 ### 回答2: 在Linux中,要查看节点信息,需要使用一些工具和命令。以下是几种常见的方法: 1. 使用top命令查看系统负载:top命令可以显示系统的负载平衡情况、运行进程的信息、CPU使用率等。在命令行中直接输入top就可以运行。 2. 使用lscpu命令查看系统CPU信息:lscpu命令可以显示CPU的型号、架构、核心数量等信息。在命令行中直接输入lscpu即可。 3. 使用free命令查看系统内存使用情况:free命令可以显示系统的内存使用情况,包括总内存、可用内存、已使用内存等信息。在命令行中输入free即可。 4. 使用df命令查看磁盘使用情况:df命令可以显示系统各个分区的磁盘使用情况。在命令行中输入df即可。 5. 使用uname命令查看系统信息:uname命令可以显示系统的版本、架构、操作系统类型等信息。在命令行中输入uname即可。 6. 使用cat /proc/cpuinfo命令查看CPU信息:这个命令可以显示CPU的更详细信息,比如频率、缓存大小、支持的指令等。在命令行中输入cat /proc/cpuinfo即可。 除了以上几种方式,还有一些其他的命令和工具,如dmesg、ifconfig、netstat等,都可以用于查看系统的节点信息。不同的命令和工具适用于不同的情况,可以根据具体需求灵活选择使用。 ### 回答3: Linux系统是一个基于开源、自由、免费的操作系统,在使用过程中,我们可能需要查看各个节点信息,以便进行系统管理和调优等工作。下面就介绍一些常用的命令和方法查看Linux系统的节点信息: 1.查看CPU信息:可以使用以下命令查看CPU相关信息: cat /proc/cpuinfo lscpu 2.查看内存信息:可以使用以下命令查看内存相关信息: free -m cat /proc/meminfo 3.查看硬盘信息:可以使用以下命令查看硬盘相关信息: fdisk -l lsblk 4.查看网络信息:可以使用以下命令查看网卡、IP、MAC等网络相关信息: ip addr ifconfig 5.查看进程信息:可以使用以下命令查看进程相关信息: top ps aux 6.查看操作系统版本及其它信息:可以使用以下命令查看操作系统、内核版本等相关信息: uname -a cat /etc/issue 总之,linux系统中的每一个节点都非常重要,查看节点信息对于系统的管理和优化非常关键。通过上述的介绍,相信大家已经掌握了一些常用的查看节点信息的方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值