Linux花式取ip

  • 使用hostname -I取出的IP后面会有一个空格
[root@centos8 ~]#hostname -I | cat -A
10.0.0.8 $
  • 通常我们直接从ifconfig中取ip地址更准确
  • 利用grep配合grep取ip地址
[root@C8-196 ~]# ifconfig | grep -w 'inet' | grep -v 127 |awk '{print $2}'
10.0.0.196
  • 利用sed配合awk直接过滤取ip地址
[root@C8-196 ~]# ifconfig eth0|sed -n '2p' |awk '{print $2}'|cat -A
10.0.0.196$
  • 利用awk直接过滤取ip地址
[root@C8-196 ~]# ifconfig eth0 | awk '/netmask/{print $2}'
10.0.0.196
  • 利用awk取子网掩码
[root@C8-196 ~]# ifconfig eth0 |awk -F " +|:" '/mask/{print $5}'
255.255.255.0
  • 利用awk从ip a 命令返回的结果中取ip地址
[root@centos6 ~]#ip a show eth0 |awk -F' +|\/' '/\<inet\>/{print $3}' 2>
/dev/null
10.0.0.6
  • 利用sed取IP地址
[root@centos8 ~]#ifconfig eth0| sed -rn '2s/^[^0-9]+([0-9.]+) .*$/\1/p'
10.0.0.8
[root@centos6 ~]#ifconfig eth0| sed -rn '2s/^[^0-9]+([0-9.]+) .*$/\1/p'
10.0.0.6
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐