当我在 IP 上运行 nslookup 时(这些都是示例)
nslookup 192.168.1.123
电流输出:
41.31.211.111
期望输出:
111.211.31.41
我有一个可以运行的脚本,只是为了查看是否有更有效的方法或内置nslookup
命令。
答案1
echo 411.311.211.111 | awk -F. '{print $4"."$3"." $2"."$1}'
输出:
111.211.311.411
或者
echo 411.311.211.111 | awk -F. '{OFS="."; print $4,$3,$2,$1}'
答案2
这是一个原生函数。调用它就像是reverseip 12.34.56.78
打印一样78.56.34.12
。调用它就像是reversed=$(reverseip 12.34.56.78)
将输出捕获到变量中一样。
reverseip () {
local IFS
IFS=.
set -- $1
echo $4.$3.$2.$1
}
set
带有字符串参数的 会根据 的当前值将此字符串标记为$1
、等。因此,我们将函数的输入参数分解为标记,现在替换原始的、等。因为是一个点,所以原始的输入值会按点拆分。破折号是一种安全措施,用于表示 选项的结束,以防 的实际值以破折号开头(如果没有 ,您将收到“未知选项”错误,或者更糟的是,随机甚至不安全的行为)。$2
IFS
$1
$1
$2
IFS
$1
--
set
$1
--