如何获取主机名和域名?

如何获取主机名和域名?

在Unix(Solaris)中是否有任何命令可以同时返回主机名和域名?

例如:

hostname -> servername
domainname -> us.xyz.com

我需要 :servername.us.xyz.com

答案1

命令

hostname --fqdn (or -f)

也可能做你想做或不做的事,因为在我的系统上,(none)当我运行时我得到domainname

答案2

如果您的域在 resolv.conf 中设置正确,这将起作用。如果您的 NIS 域名与您的 DNS 域相同,您还可以使用其他人提到的域名命令。

echo `uname -n`.`awk '/^domain/ {print $2}' /etc/resolv.conf`

答案3

这个问题也困扰了我很多年。我只是通过说解决这个问题

$(hostname).$(domainname)

您可以定义 shell 函数或别名:

fqdn () {
    echo $(hostname).$(domainname)
}

答案4

我知道这是一个较旧的线程,但我需要在脚本中分别提取主机名和域名。

ealgumby 对使用 check-hostname 的响应是我以前从未见过的,所以我尝试了它,并取得了巨大的成功以满足我的需求。我会将其标记为有帮助,但显然我没有代表这样做。

我按如下方式设置域,循环检查主机名的输出。

domain=`check-hostname | nawk -F\. '{for(i=2; i<NF;i++){printf $i"."}printf $NF"\n"}'`
fqdn=`hostname`'.'${domain}

相关内容