如何在Erlang / Elixir中获得完全合格的域名(或只是域名)?

时间:2018-05-01 20:46:34

标签: erlang elixir

Erlang有inet.gethostname来获取主机名:

iex(1)> {:ok, hostname} = :inet.gethostname
{:ok, 'Michaels-MacBook-Pro'}

但是你如何获得域名?

2 个答案:

答案 0 :(得分:4)

:net_adm.dns_hostname(:net_adm.localhost)

似乎做你想做的事。

答案 1 :(得分:1)

这不是最优雅的解决方案,但这是我发现迄今为止唯一有效的方法:

def fqdn do
  {fqdn, _exit_status} = System.cmd("hostname", ["-f"])
  String.trim(fqdn)
end