我有一个制表符分隔文件,有5列:
file1.txt
1 101 T A 0.36
1 101 T C 0.43
1 101 T G 0.28
1 102 A C 0.36
我想打印最后一列两次,所以我希望:
1 101 T A 0.36 0.36
1 101 T C 0.43 0.43
1 101 T G 0.28 0.28
1 102 A C 0.36 0.36
我试试:
cat file1.txt | awk -v OFS="\t" '$1=$1'| awk '{print $1,$2,$3,$4,$5,$5}'
仅输出最后一列:
0.36
0.43
0.28
0.36
我也尝试过:
awk '{print $0,$5}' file1.txt
哪个印刷相同: 它只输出最后一列:
0.36
0.43
0.28
0.36
当我有cut
命令时,我可以单独打印cut -f1
和cut -f2
等等,所以没有问题。
我无法理解发生了什么,并想问我怎样才能打印最后一列两次?
答案 0 :(得分:2)
要打印最后一个字段:
awk '{ $NF=$NF OFS $NF }1' OFS='\t' file
输出:
1 101 T A 0.36 0.36
1 101 T C 0.43 0.43
1 101 T G 0.28 0.28
1 102 A C 0.36 0.36