我想删除包含它的任何字段中第四次出现字符“:”之后的内容。请参阅示例:
输入:
1 10975 A C 1/1:137,105:245:99:1007,102,0 0/1:219,27:248:20:222,0,20
1 19938 T TA ./. 1/1:0,167:167:99:4432,422,0,12,12
12 20043112 C G 1/2:3,5,0:15:92 2/2:3,15:20:8
预期输出:
1 10975 A C 1/1:137,105:245:99 0/1:219,27:248:20
1 19938 T TA ./. 1/1:0,167:167:99
12 20043112 C G 1/2:3,5,0:15:92 2/2:3,15:20:8
所以基本上任何具有“:”的字段都应该被删除。请注意,第三行没有任何变化,因为“:”只出现了三次。我已经尝试并找到了一个解决方案(不好),它不仅适用于第一行,也不适用于第二行,因为它有更多的逗号“,”
不完整的解决方案:
sed 's/:[0-9]*,[0-9]*,[0-9]*//g'
提前致谢