学习啦 > 学习电脑 > 操作系统 > Linux教程 > linux unmae命令详解

linux unmae命令详解

时间: 佳洲1085 分享

linux unmae命令详解

  uname命令是linux系统下的一个命令。那么它的具体用法是怎样的呢?下面由学习啦小编为大家整理了linux uanme命令的相关知识,希望对大家有帮助!

  linux unmae命令功能说明

  uname用来获取电脑和操作系统的相关信息。

  linux unmae命令语法

  uname [-amnrsvpio][--help][--version]

  补充说明:uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。

  linux unmae命令参数

  -a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称

  -m或–machine 显示主机的硬件(CPU)名

  -n或-nodename 显示主机在网络节点上的名称或主机名称

  -r或–release 显示linux操作系统内核版本号

  -s或–sysname 显示linux内核名称

  -v 显示显示操作系统是第几个 version 版本

  -p 显示处理器类型或unknown

  -i 显示硬件平台类型或unknown

  -o 显示操作系统名

  –help 获得帮助信息

  –version   显示uname版本信息

  扩展阅读 Linux uname函数调用

  【linux uname系统调用】

  功能描述:

  获取当前内核名称和其它信息。

  用法:

  #include

  extern int uname (struct utsname *__name) __THROW;

  参数:

  __name:指向存放系统信息的缓冲区,原型如下

  复制代码代码如下:

  struct utsname

  { char sysname[_UTSNAME_SYSNAME_LENGTH];//当前操作系统名

  char nodename[_UTSNAME_NODENAME_LENGTH];//网络上的名称

  char release[_UTSNAME_RELEASE_LENGTH];//当前发布级别

  char version[_UTSNAME_VERSION_LENGTH];//当前发布版本

  char machine[_UTSNAME_MACHINE_LENGTH];//当前硬件体系类型

  #if _UTSNAME_DOMAIN_LENGTH - 0

  /* Name of the domain of this node on the network. */

  # ifdef __USE_GNU

  char domainname[_UTSNAME_DOMAIN_LENGTH]; //当前域名

  # else

  char __domainname[_UTSNAME_DOMAIN_LENGTH];

  # endif

  #endif

  };

  返回说明:

  成功执行时,返回0。失败返回-1,errno被设为EFAULT,表示buf无效。

  关于uname的具体用法可以使用“man uname”来查看。

  实例如下:

  复制代码代码如下:

  #include

  #include

  #include

  int main()

  {

  struct utsname testbuff;

  int fb=0;

  fb=uname(&testbuff);

  if(fb<0)

  {

  perror("uname");

  return 0;

  }else

  {

  printf(" sysname:%s\n nodename:%s\n release:%s\n version:%s\n machine:%s\n \n ",\

  testbuff.sysname,\

  testbuff.nodename,\

  testbuff.release,\

  testbuff.version,\

  testbuff.machine);

  #if _UTSNAME_DOMAIN_LENGTH - 0

  # ifdef __USE_GNU

  printf(" domainame:%s\n ",testbuff.domainname);

  //char domainname[_UTSNAME_DOMAIN_LENGTH]; //当前域名

  # else

  printf(" __domainame:%s\n ",testbuff.__domainname);

  //char __domainname[_UTSNAME_DOMAIN_LENGTH];

  # endif

  #endif

  }

  return 0;

  }

3584442