我有两个文件
文件1:
[/tmp/mednotes8910030368496690883]> egrep -o ".{20}\"\? 5\" .{20}" results.edn
oothbrush for" 160, "? 5" 32, ". ) during his
t with sutures" 32, "? 5" 352, "4.81 pounds" 1
"being up all" 32, "? 5" 32, "limited financi
everytime she" 32, "? 5" 32, "had a partial m
文件2:
AAAAA01 T1 0 0 0 0 C C G G G
AAAAA02 T1 0 0 0 0 C C G G G
AAAAA03 T1 0 0 0 0 C C G G G
AAAAA04 T1 0 0 0 0 C C G G G
AAAAA05 T1 0 0 0 0 C C G G G
AAAAA06 T1 0 0 0 0 C C G G G
AAAAA07 T1 0 0 0 0 C C G G G
AAAAA08 T1 0 0 0 0 C C G G G
AAAAA09 T1 0 0 0 0 C C G G G
AAAAA10 T2 0 0 0 0 C C G G G
AAAAA11 T2 0 0 0 0 C C G G G
我尝试了以下awk选项..但我只更换了第6列中的第一行。
2 0
2 0
3 0
2 0
2 0
3 0
2 0
2 0
3 0
3 0
3 0
如何将File1中的第6列替换为File2中的第1列?
答案 0 :(得分:4)
您可以使用以下代码 -
awk 'FNR==NR{a[NR]=$1;next}{$6=a[FNR]}1' File2.txt File1.txt > output.txt
这给了我完美的输出,如下面
AAAAA01 T1 0 0 0 2 C C G G G<br/>
AAAAA02 T1 0 0 0 2 C C G G G<br/>
AAAAA03 T1 0 0 0 3 C C G G G<br/>
AAAAA04 T1 0 0 0 2 C C G G G<br/>
AAAAA05 T1 0 0 0 2 C C G G G<br/>
AAAAA06 T1 0 0 0 3 C C G G G<br/>
AAAAA07 T1 0 0 0 2 C C G G G<br/>
AAAAA08 T1 0 0 0 2 C C G G G<br/>
AAAAA09 T1 0 0 0 3 C C G G G<br/>
AAAAA10 T2 0 0 0 3 C C G G G<br/>
AAAAA11 T2 0 0 0 3 C C G G G<br/>
当我尝试在线模拟器时
答案 1 :(得分:2)
替代解决方案
awk '{$6=$(NF-1); $(NF-1)=$NF=""}1' <(paste file1 file2)