Chinaunix首页 | 论坛 | 博客
  • 博客访问: 127759
  • 博文数量: 12
  • 博客积分: 2079
  • 博客等级: 大尉
  • 技术积分: 161
  • 用 户 组: 普通用户
  • 注册时间: 2007-09-07 10:54
文章分类

全部博文(12)

文章存档

2013年(9)

2011年(2)

2010年(1)

分类: LINUX

2013-08-08 20:03:06

文件一内容
$ cat a
name: xxx
xxoo
name: xxx
xxoo
xxoo
name: xxx
xxoo
xxoo
xxoo
name: xxx


文件二内容
$ cat b
name: 123 
ooxx
name: 456
ooxx
ooxx
name: 789
ooxx
ooxx
ooxx
wasd
sdf
name: 666

想把文件一中name后面的xxx 用文件二中name后面的数字替换, 文件一其他内容不变




$ awk 'NR==FNR&&/^name:/{a[++c]=$2}NR!=FNR{if(/^name:/)$2=a[++b];print}' b a
$ awk 'NR==FNR{if (/name:/)a[++i]=$2;next}/name:/{$2=a[++j]}1' b a

原贴: 

阅读(2143) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~