2016-08-09 78 views
1

我想采取6个柱(〜130万线)文件,并重复基于该值的线在列4,输入线路:重复或复制基于列的值

chr1 6209 6234 2 255 + 
chr1 6686 6710 1 255 + 
chr1 6755 6780 3 255 + 

输出:

chr1 6209 6234 2 255 + 
chr1 6209 6234 2 255 + 
chr1 6686 6710 1 255 + 
chr1 6755 6780 3 255 + 
chr1 6755 6780 3 255 + 
chr1 6755 6780 3 255 + 

我发现this question这是非常相似的,但是当我尝试使用的代码我无法保持我的专栏:

请原谅我的无知的脚本。任何建议表示赞赏。

回答

6

awk来救援!

$ awk '{c=$4; while(c-->0) print}' file 

chr1 6209 6234 2 255 + 
chr1 6209 6234 2 255 + 
chr1 6686 6710 1 255 + 
chr1 6755 6780 3 255 + 
chr1 6755 6780 3 255 + 
chr1 6755 6780 3 255 +