这篇文章主要介绍“怎么使用shell脚本查看网络接口信息”,在日常操作中,相信很多人在怎么使用shell脚本查看网络接口信息问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用shell脚本查看网络接口信息”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

系统环境

Centos7

1)检查可用的网络接口

使用ipawk命令,过滤出状态为UP的网络接口。

[root@localhost~]#ipad|awk'/stateUP/{print$2}'ens33:ens38:

2)查看网络接口的IP地址

使用下面命令过滤出每个接口的ip地址:

[root@localhost~]#ip-oaddr|awk'/inet/{print$2,$4}'lo127.0.0.1/8lo::1/128ens33192.168.43.138/24ens33fe80::214e:53b4:43f6:5495/64ens38172.25.254.130/24ens38fe80::c2ff:9dbc:76be:6dd9/64或者只查看IPv4地址:[root@localhost~]#ipaddr|grepinet|grep-v'inet6'|awk'{print$NF,$2}'lo127.0.0.1/8ens33192.168.43.138/24ens38172.25.254.130/24

3)查看网卡的MAC地址

如果只想查看网络接口名称和相应的MAC地址,请使用以下命令。检查特定的网络接口的MAC地址:

[root@localhost~]#iplinkshowens33|awk'/link/{print$2}'00:0c:29:99:ee:d9

查看所有网络接口的MAC地址,可以写一个脚本来实现:

[root@localhost~]#catmac-address.sh#!/bin/bashipaddr|awk'/stateUP/{print$2}'|sed's/://'|whilereadoutputdoecho$output:ethtool-P$outputdone

查看一下运行结果:

4)查看网络接口的速度

如果要在Linux上检查网络接口端口速度,可以使用ethtool工具。下面是查看特定网络接口的速度: [root@localhost ~]# ethtool ens33|grep “Speed:” Speed: 1000Mb/s

查看所有接口的网络速度,可以写一个脚本来实现:

[root@localhost~]#catport-speed.sh#!/bin/bashipaddr|awk'/stateUP/{print$2}'|sed's/://'|whilereadoutputdoecho$output:ethtool$output|grep"Speed:"done

查看一下运行结果:

5)查看网络接口信息的Shell脚本

下面这个脚本,我们来实现查看主机名、IPv4、IPv6、MAC地址、网络接口速度信息:

[root@localhost~]#catnic-info.sh#!/bin/bashhostnameecho"-------------"forinamein$(ipaddr|awk'/stateUP/{print$2}')doecho"$iname"ipaddrshow$iname|grepinet|awk'{printf"%s:\t%s\n",$1,$2}'iplinkshow$iname|greplink|awk'{printf"MAC:\t%s\n",$2}'ethtoolens33|awk'/Speed/{printf"%s\t%s\n",$1,$2}'done

到此,关于“怎么使用shell脚本查看网络接口信息”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!