页次: 1
要求,
本地网卡,私有地址A B C
如果有多个,只打印一个
必须路由表存在
不能用旧的 route,ifconfig,netstat命令
只ipv4
离线
「必须路由表存在」是什么意思呢?有涉及到该地址/接口的路由表项存在?
如果有多个,打印任意一个么?
不能用那些命令,也就是可以用 ip 命令?
离线
路由表存在没什么特殊意思,一般都会有本地子网的段
打印任意一個
就是ip命令
离线
ip a s wlan0 然后在里边找吧。
离线
需要通用的,尽量各种环境都检测正确
最近编辑记录 atmouse (2015-11-13 20:49:51)
离线
需要通用的,尽量各种环境都检测正确
ip 命令的输出格式还算稳定吧。
你能不能说说你想干啥?
离线
不可能任何系統网卡名都一樣啊,所以才说尽量能正确获取
就是获取本机ether网卡的私有地址ip,其他程序需要用到
离线
不可能任何系統网卡名都一樣啊,所以才说尽量能正确获取
就是获取本机ether网卡的私有地址ip,其他程序需要用到
折腾半天,原来你纠结的是获取网卡名啊………………
你枚举所有网卡,找出地址为私有的不就好了么?
离线
我说了这么多,你不给下例子么
离线
ip a | grep -oP 'inet (192\.168\.\d+\.\d+|172\.(1[6-9]|2[0-9]|3[01])\.\d+\.\d+|10\.\d+\.\d+\.\d+)\b' | awk '{print $2;exit}'
离线
看起来可行,但是你漏了排除物理网卡之外的设备,tun/tap,gre什么的
离线
看起来可行,但是你漏了排除物理网卡之外的设备,tun/tap,gre什么的
你又没说不要虚拟的网络接口。需要的话,按名称过滤一下就可以了。
离线
页次: 1