文件一内容
$ 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
原贴:
阅读(2194) | 评论(0) | 转发(0) |