免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: holylight84
打印 上一主题 下一主题

[求助]awk 怎么取每个记录的行首? [复制链接]

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
11 [报告]
发表于 2008-07-29 10:21 |只看该作者
  1. ifconfig|awk -v FS='\n' -v RS='' '{print $1}'
复制代码

论坛徽章:
0
12 [报告]
发表于 2008-07-29 10:22 |只看该作者

  1. $cat a
  2. 1: kijfdidfj
  3. 1jdjfjf
  4. 2: jdfijd
  5. 22fjidj
  6. 3: fjdij
  7. $awk 'BEGIN{RS="[[:digit:]]:"}{print $1}' a

  8. kijfdidfj
  9. jdfijd
  10. fjdij
  11. $awk 'BEGIN{RS="[[:digit:]]:"}{print $0}' a

  12. kijfdidfj
  13. 1jdjfjf

  14. jdfijd
  15. 22fjidj

  16. fjdij

复制代码

为什么呢?

[ 本帖最后由 爱知 于 2008-7-29 10:29 编辑 ]

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
13 [报告]
发表于 2008-07-29 10:29 |只看该作者

回复 #10 holylight84 的帖子

可以这样:RS = "^[0-9]+\n[0-9]+:"

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
14 [报告]
发表于 2008-07-29 10:30 |只看该作者

回复 #12 爱知 的帖子

结果正常。

论坛徽章:
0
15 [报告]
发表于 2008-07-29 10:33 |只看该作者
原帖由 blackold 于 2008-7-29 10:29 发表
可以这样:RS = "^[0-9]+\n[0-9]+:"

$cat a
1: kijfdidfj
1jdjfjf
2: jdfijd
22fjidj
3: fjdij
$awk 'BEGIN{RS="^[0-9]+\n[0-9]+:"}{print $1}' a

kijfdidfj
jdfijd
fjdij


好象还是不正确
$1应该是两行的内容吧

[ 本帖最后由 爱知 于 2008-7-29 10:34 编辑 ]

论坛徽章:
0
16 [报告]
发表于 2008-07-29 10:35 |只看该作者

回复 #14 blackold 的帖子

$1应该是两行的内容吧

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
17 [报告]
发表于 2008-07-29 10:36 |只看该作者

回复 #15 爱知 的帖子

正确啊,第一个记录为空。

论坛徽章:
0
18 [报告]
发表于 2008-07-29 10:40 |只看该作者
原帖由 blackold 于 2008-7-29 10:36 发表
正确啊,第一个记录为空。

为什么为空呢?
不是两行内容吗?

论坛徽章:
0
19 [报告]
发表于 2008-07-29 10:42 |只看该作者
原帖由 blackold 于 2008-7-29 10:29 发表
可以这样:RS = "^[0-9]+\n[0-9]+:"

恩恩,这个貌似可以,我试试看~~~~

论坛徽章:
0
20 [报告]
发表于 2008-07-29 10:49 |只看该作者
ok了,非常感谢大家的帮忙~~~~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP