我试图消除(巨大的)制表符分隔文本文件中两个字段之间的制表符分隔。 我的数据如下:
rs12345 8000 A B
rs67890 8000 B B
rs54321 8000 A A
...
我想把它变成:
rs12345 8000 AB
rs67890 8000 BB
rs54321 8000 AA
...
我想要合并的两个列的右边有几个其他列(不需要修改)。
非常感谢任何能提供帮助的人。
卢卡
答案 0 :(得分:2)
以下应该有效(使用bash)。它将第三个字段设置为第三个和第四个字段的连接值,并将第四个字段向左移动一个。
awk -F$'\t' -v OFS=$'\t' '{$3=$3$4;for(i=4; i<NF; ++i) $i=$(i+1);NF=NF-1;print}'
答案 1 :(得分:0)
cat file
rs12345 8000 A B test 2332
rs67890 8000 B B ew 45
rs54321 8000 A A dfdfg 34
设置$ 3到$ 3 $ 4并删除$ 4和额外标签
awk '{$3=$3$4;$4="";sub("\t\t","\t")}1' OFS="\t" file
rs12345 8000 AB test 2332
rs67890 8000 BB ew 45
rs54321 8000 AA dfdfg 34