免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1737 | 回复: 7
打印 上一主题 下一主题

[文本处理] 重新编排arplist [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-12-22 20:14 |只看该作者 |倒序浏览
本帖最后由 674949301 于 2015-12-22 20:19 编辑

root@XIAOMI:/tmp/home/root# arp
MEIZU.XIAOMI (192.168.1.6) at 11:22:33:44:55:66 [ether]  on br0
DESKTOP-VBSCTAE.XIAOMI (192.168.1.20) at 11:33:22:11:33:11 [ether]  on br0
iPhone-14.XIAOMI (192.168.1.23) at 11:22:11:22:22:11 [ether]  on br0

输入arp后打印出来该列表,想让它这样排列:
MEIZU.XIAOMI 192.168.1.6 11:22:11:22:22:11
DESKTOP-VBSCTAE.XIAOMI 192.168.1.20 11:22:11:22:22:11
iPhone-14.XIAOMI 192.168.1.23 11:33:22:11:33:11
不知道能都实现,请各位帮忙看看!

论坛徽章:
20
卯兔
日期:2015-01-26 22:05:142015亚冠之萨济拖拉机
日期:2015-09-10 15:15:282015亚冠之阿尔希拉尔
日期:2015-09-25 17:37:53程序设计版块每日发帖之星
日期:2015-10-03 06:20:00程序设计版块每日发帖之星
日期:2015-12-09 06:20:00CU十四周年纪念徽章
日期:2015-12-17 09:07:15程序设计版块每日发帖之星
日期:2015-12-25 06:20:34程序设计版块每日发帖之星
日期:2015-12-25 06:20:34程序设计版块每日发帖之星
日期:2015-12-25 06:20:342015亚冠之广州富力
日期:2015-08-27 19:29:56每日论坛发贴之星
日期:2015-08-26 06:20:002015亚冠之阿尔希拉尔
日期:2015-05-18 17:26:27
2 [报告]
发表于 2015-12-22 21:07 |只看该作者
本帖最后由 songyc_2015 于 2015-12-22 21:28 编辑

@674949301
  1. $ awk -vs="11:22:11:22:22:11" '{gsub(/[()]|at/,"");NF-=3;$NF=s}1' file
  2. $ sed -r 's#[()]|at##g;s# ([^ ]* *){4}$#11:22:11:22:22:11#' file
复制代码

论坛徽章:
0
3 [报告]
发表于 2015-12-22 21:51 |只看该作者
非常感谢你的回答,多行这样修改的话不行哦!这样都是一样的mac地址。单行修改这样就非常有效!
回复 2# songyc_2015


   

论坛徽章:
20
卯兔
日期:2015-01-26 22:05:142015亚冠之萨济拖拉机
日期:2015-09-10 15:15:282015亚冠之阿尔希拉尔
日期:2015-09-25 17:37:53程序设计版块每日发帖之星
日期:2015-10-03 06:20:00程序设计版块每日发帖之星
日期:2015-12-09 06:20:00CU十四周年纪念徽章
日期:2015-12-17 09:07:15程序设计版块每日发帖之星
日期:2015-12-25 06:20:34程序设计版块每日发帖之星
日期:2015-12-25 06:20:34程序设计版块每日发帖之星
日期:2015-12-25 06:20:342015亚冠之广州富力
日期:2015-08-27 19:29:56每日论坛发贴之星
日期:2015-08-26 06:20:002015亚冠之阿尔希拉尔
日期:2015-05-18 17:26:27
4 [报告]
发表于 2015-12-22 22:09 |只看该作者
回复 3# 674949301
举个例子

论坛徽章:
0
5 [报告]
发表于 2015-12-22 22:45 |只看该作者

本帖最后由 674949301 于 2015-12-22 20:19 编辑
可能我刚才写的太笼统了,造成您的错误理解!啊哈哈!

比如:
root@XIAOMI:/tmp/home/root# arp
MEIZU.XIAOMI (192.168.1.6) at 78:22:33:44:55:66 [ether]  on br0
DESKTOP-VBSCTAE.XIAOMI (192.168.1.20) at 11:33:22:11:33:11 [ether]  on br0
iPhone-14.XIAOMI (192.168.1.23) at 56:44:11:22:22:11 [ether]  on br0

想让它这样排列:
MEIZU.XIAOMI 192.168.1.6 78:22:33:44:55:66
DESKTOP-VBSCTAE.XIAOMI 192.168.1.20  11:33:22:11:33:11
iPhone-14.XIAOMI 192.168.1.23 56:44:11:22:22:11

而是不您所写脚本输出的都是同一个MAC地址
MEIZU.XIAOMI 192.168.1.6 11:22:11:22:22:11
DESKTOP-VBSCTAE.XIAOMI 192.168.1.20 11:22:11:22:22:11
iPhone-14.XIAOMI 192.168.1.23 11:22:11:22:22:11

回复 4# songyc_2015


   

论坛徽章:
30
申猴
日期:2014-04-10 09:43:532015年亚洲杯纪念徽章
日期:2015-03-20 14:40:232015亚冠之阿尔纳斯尔
日期:2015-06-02 18:59:042015亚冠之阿尔希拉尔
日期:2015-06-30 15:22:572015亚冠之大阪钢巴
日期:2015-07-20 10:44:332015亚冠之阿尔纳斯尔
日期:2015-10-28 14:57:5215-16赛季CBA联赛之新疆
日期:2015-12-25 10:18:45黑曼巴
日期:2016-06-26 21:39:5315-16赛季CBA联赛之山西
日期:2016-07-25 21:54:2715-16赛季CBA联赛之北京
日期:2016-10-27 12:07:2315-16赛季CBA联赛之八一
日期:2017-07-07 16:39:0915-16赛季CBA联赛之吉林
日期:2017-09-04 12:14:43
6 [报告]
发表于 2015-12-22 22:59 |只看该作者
  1. awk '{match($0,"([^(]+)\\(([^)]+)\\) at ([^[]+)",a);print a[1]a[2]a[3]}' file   
  2. MEIZU.XIAOMI 192.168.1.678:22:33:44:55:66
  3. DESKTOP-VBSCTAE.XIAOMI 192.168.1.2011:33:22:11:33:11
  4. iPhone-14.XIAOMI 192.168.1.2356:44:11:22:22:11
复制代码
回复 1# 674949301


   

论坛徽章:
20
卯兔
日期:2015-01-26 22:05:142015亚冠之萨济拖拉机
日期:2015-09-10 15:15:282015亚冠之阿尔希拉尔
日期:2015-09-25 17:37:53程序设计版块每日发帖之星
日期:2015-10-03 06:20:00程序设计版块每日发帖之星
日期:2015-12-09 06:20:00CU十四周年纪念徽章
日期:2015-12-17 09:07:15程序设计版块每日发帖之星
日期:2015-12-25 06:20:34程序设计版块每日发帖之星
日期:2015-12-25 06:20:34程序设计版块每日发帖之星
日期:2015-12-25 06:20:342015亚冠之广州富力
日期:2015-08-27 19:29:56每日论坛发贴之星
日期:2015-08-26 06:20:002015亚冠之阿尔希拉尔
日期:2015-05-18 17:26:27
7 [报告]
发表于 2015-12-22 23:37 |只看该作者
回复 5# 674949301
  1. $ awk '{gsub(/[()]|at/,"");NF-=3}1' file
  2. $ sed -r 's#[()]|at##g;s# ([^ ]* *){3}$##' file
  3. MEIZU.XIAOMI 192.168.1.6  78:22:33:44:55:66
  4. DESKTOP-VBSCTAE.XIAOMI 192.168.1.20  11:33:22:11:33:11
  5. iPhone-14.XIAOMI 192.168.1.23  56:44:11:22:22:11
复制代码

论坛徽章:
6
羊年新春福章
日期:2015-03-03 17:16:28双子座
日期:2015-03-03 17:16:56巳蛇
日期:2015-03-03 17:17:2415-16赛季CBA联赛之福建
日期:2016-03-11 09:05:00黑曼巴
日期:2016-07-07 16:58:1215-16赛季CBA联赛之吉林
日期:2016-11-14 09:23:07
8 [报告]
发表于 2015-12-23 09:57 |只看该作者
  1. sed -r 's/(.*)\(([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})\) at ([0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}).*/\1\2 \3/' file
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP