基本的思路就是用route命令列出所有的网卡名,然后再用ifconfig配合字符串匹配找出对应的ip地址,示例如下:
#!/bin/bash
function ips(){
local nics=$(route -n | grep ^0.0.0.0 | awk '{print $8}')
for nic in $nics
do
local ip=$(ifconfig $nic | grep -E 'inet\s+' | sed -E -e 's/inet\s+\S+://g' | awk '{print $1}')
echo $ip [$nic]
done
}
ips
本文介绍了一个使用Bash脚本通过route命令和ifconfig命令组合来获取系统中所有网卡及其对应IP地址的方法。该脚本首先列出所有网卡名称,然后通过字符串匹配找出每个网卡的IP地址。
667

被折叠的 条评论
为什么被折叠?



