【发布时间】:2015-09-26 21:59:26
【问题描述】:
我需要在 shell 脚本中将主机名解析为 IP 地址。代码必须至少在Cygwin、Ubuntu 和OpenWrt(busybox) 中有效。
可以假设每个主机只有一个 IP 地址。
例子:
-
输入
google.com -
输出
216.58.209.46
编辑:
nslookup 似乎是一个不错的解决方案,但它的输出非常不可预测且难以过滤。这是我电脑上的结果命令(Cygwin):
>nslookup google.com
Unauthorized answer:
Serwer: UnKnown
Address: fdc9:d7b9:6c62::1
Name: google.com
Addresses: 2a00:1450:401b:800::200e
216.58.209.78
【问题讨论】:
-
如果您需要您的代码在
busybox中工作,那么它不是 bash;这意味着您需要 POSIX sh 兼容性,这是一种不同的语言(尽管 bash 是超集,就像 C++ 是 C 的超集一样)。请适当标记。 -
@CharlesDuffy 谢谢!我不知道有什么区别。