shell 获得本机ip 获得内网ip
machine_physics_net=$(ls /sys/class/net/ | grep -v "`ls /sys/devices/virtual/net/`");
local_ip=$(ip addr | grep "$machine_physics_net" | awk '/^[0-9]+: / {}; /inet.*global/ {print gensub(/(.*)\/(.*)/, "\\1", "g", $2)}');
初级版
在部署的时候需要获取内网IP
ip addr | awk '/^[0-9]+: / {}; /inet.*global.*eth/ {print gensub(/(.*)\/(.*)/, "\\1", "g", $2)}'
效果不错,但是这个只能搜索网卡前缀是eth
,在别的环境下行不通,在新环境中发现网卡前缀为ens
傻瓜版
这样简单判断一下
local_ip_eth0=$(ip addr | awk '/^[0-9]+: / {}; /inet.*global.*eth/ {print gensub(/(.*)\/(.*)/, "\\1", "g", $2)}')
loca