当前位置: 技术问答>linux和unix
linux下如何通过shell脚本实现类似下面的功能
来源: 互联网 发布时间:2017-04-09
本文导语: 例如,通过在linux cmd窗口输入ip mac会出现如下形式的信息 ip1 macA ip2 macA ip3 macB ip4 macC ip5 macB ip6 macD ip7 macC 如何通过shell脚本(尽量不要使用中间文件)对上述输出进行处理,使相同mac地址只选取一个ip存入一...
例如,通过在linux cmd窗口输入ip mac会出现如下形式的信息
如何通过shell脚本(尽量不要使用中间文件)对上述输出进行处理,使相同mac地址只选取一个ip存入一个ipArray数组,例如,上面的数组处理后ipArray数组可为:
ipArray={ip1,ip3,ip4,ip6},只要输出一个这样的ipArray数组就可以,
Array={ip2,ip3,ip4,ip6}也满足要求,请高手指导下,谢谢
ip1 macA
ip2 macA
ip3 macB
ip4 macC
ip5 macB
ip6 macD
ip7 macC
如何通过shell脚本(尽量不要使用中间文件)对上述输出进行处理,使相同mac地址只选取一个ip存入一个ipArray数组,例如,上面的数组处理后ipArray数组可为:
ipArray={ip1,ip3,ip4,ip6},只要输出一个这样的ipArray数组就可以,
Array={ip2,ip3,ip4,ip6}也满足要求,请高手指导下,谢谢
|
ipArray=($(ip mac | awk '{if(a[$2]==0)print $1;a[$2]++}'))
echo ${ipArray[0]}
|
可以用awk里的数组解决。