Linux查看主机名

问题

今天写一个程序需要跑在不同的设备上,需要获取设备名称(hostname),中间发现嵌入式设备端有些指令没有,比如hostname指令,于是需要一个通用的方法来获取主机名;

结果

使用指令uname -n来获取设备名称;
Linux查看主机名

本来打算使用hostname可是发现该指令在设备上没有包含,只好换种方法;
Linux查看主机名
通常在Linux系统中,/etc/hostname以及/etc/hosts用以保存设备主机名,可以通过查看该文件找到设备的主机名;但是在OpenWRT中,/etc目录下不存在hostname文件,并且hosts文件中未包含显示的主机名,查询得知OpenWRT中主机名保存在/etc/config/systemhostname那一项;存储名字的文件不同,不方便统一查找,但也可以对不同情况做不同策略的查找,代码不具有通用性,就未做分别读去汇合到一起的策略;使用uname指令更为直接统一,更具有跨平台通用型;

  1. 查看当前的主机名
  2. linux 查看更改hostname命令解析详解
  3. 如何在Debian 9 Linux上更改主机名