首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Linux awk命令

Linux awk命令
EN

Stack Overflow用户
提问于 2010-10-30 10:58:59
回答 5查看 615关注 0票数 3

我是一个使用Linux的初学者,我有一个输入文件,内容如下:

代码语言:javascript
运行
复制
00.11.11.11.11.11
177.22.22.22

一行以太网地址和一行IP地址,如何将此文件转换为:

代码语言:javascript
运行
复制
IP: 177.22.22.22  MAC: 00.11.11.11.11.11

我认为awk会这么做,但我不知道怎么做。有什么想法吗?

谢谢!

EN

回答 5

Stack Overflow用户

发布于 2010-10-30 12:11:47

paste - - < input_file | awk '{print "IP: " $2 " MAC: " $1}'

票数 3
EN

Stack Overflow用户

发布于 2010-10-30 13:47:13

awk -vRS=‘{打印"IP:",$2,"MAC:",$1;}’

这相当于

awk 'BEGIN{RS="";}{print "IP:",$2,"MAC:",$1;}‘

这也适用于多个输入记录:

00.11.22.33.44.55

123.45.67.89

11.22.33.44.55.66

11.22.33.99

->

IP: 123.45.67.89 MAC: 00.11.22.33.44.55

IP地址: 11.22.33.99 MAC: 11.22.33.44.55.66

票数 2
EN

Stack Overflow用户

发布于 2010-10-30 12:42:23

代码语言:javascript
运行
复制
{ if(mac) { print "IP:", $0, "MAC:", mac; mac = 0 } else mac = $0 }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4057053

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档