分别提取网络接口的 ip、掩码和网关

分别提取网络接口的 ip、掩码和网关

我知道该命令ifconfig将为您提供给定网络接口的 ip、掩码和网关。我想“以编程方式”分别提取每个参数。目前我能想到的最佳解决方案是使用进行一些解析grep

是否有ifconfig标志来单独指定 ip、掩码或网关?是否有其他 *nix 命令可以提取给定网络接口的一个参数?

答案1

这些并不是很详细,但至少看起来是有效的:

对于 bond0:

获取 IP

ifconfig | awk'/bond0/ { getline; print}'| awk'{print $2}'| awk'BEGIN {FS=":"}; {print $2}'

获取广播地址:

ifconfig | awk'/bond0/ { getline; print}'| awk'{print $3}'| awk'BEGIN {FS=":"}; {print $2}'

获取网络掩码:

ifconfig | awk'/bond0/ { getline; print}'| awk'{print $4}'| awk'BEGIN {FS=":"}; {print $2}'

对于网关:

路线 | awk'/默认/{打印$2}'

相信有人会用更简单或更直接的方法达到目的。

希望这可以帮助。

相关内容