其他
每天在你办公电脑上敲上这种经典shell脚本,鸡腿加不断!
The following article is from 浩道linux Author 点击关注👉👉
来源 | 浩道linux(ID:hao_tiyu)
如若转载请联系原公众号
前言
可以加鸡腿的shell脚本
1、初始庐山面目---ifconfig命令查看当前我系统的网卡信息如下:
2、过滤出状态为UP的网络接口,命令如下所示:
ip addr |awk -F ":" '/state UP/ {print $2}'
执行结果如下图所示:
3、过滤出对应各网卡的IP地址信息,命令如下:
ip -o addr |awk '/inet/{print $2,$4}'
执行结果如下图所示:
4、查看所有网卡的mac地址,实现脚本如下:
#!/usr/bin/bash
ip addr |awk '/state UP/{print $2}' | sed 's/://' | while read output
do
echo $output:
ethtool -P $output
done
执行结果如下图所示:
可以只查看特定网卡的mac地址,如查看ens160网卡对应的mac地址,实现脚本如下:
ip link show ens160 | awk '/link/{print $2}'
执行结果如下图所示:
5、查看所有网卡的速率,实现脚本如下所示:
#!/usr/bin/bash
ip addr |awk '/state UP/{print $2}' | sed 's/://' | while read output
do
echo $output:
ethtool $output |grep "Speed:"
done
执行结果如下图所示:
可以只查看特定网卡的速率,如查看ens160网卡对应的速率,实现脚本如下:
ethtool ens160 |grep "Speed:"
执行结果如下图所示:
6、针对以上的功能分解,最后可以将个分解的脚本合成一个脚本,将以上功能全部由一个脚本实现。实现脚本如下:
#!/usr/bin/bash
hostname
echo "*****************************************"
for iname in $(ip addr |awk '/state UP/{print $2}')
do
echo "$iname"
ip addr show $iname | grep inet | awk '{printf "%s:\t%s\n",$1,$2}'
ip link show $iname | grep link | awk '{printf "MAC:\t%s\n",$2}'
ethtool ens160 | awk '/Speed/{printf "%s\t%s\n",$1,$2}'
done
执行结果如下图所示:
结语
推荐阅读:
超硬核!11 个非常实用的 Python 和 Shell 拿来就用脚本实例!
每日打卡赢积分兑换书籍入口