У меня есть файл, который выглядит примерно так:
ID101 G T freq=.5 nonetype ANC=.1 addinfor
ID102 A T freq=.3 ANC=.01 addinfor
ID102 A T freq=.01 type=1 ALT=0.022 ANC=.02 addinfor
Как видите, каждая строка имеет немного различное количество столбцов. Я специально хочу столбец 1, столбец 2, столбец 3, столбец 4 и столбец, который начинается сANC=
Желаемый вывод:
ID101 G T freq=.5 ANC=.1
ID102 A T freq=.3 ANC=.01
ID102 A T freq=.01 ANC=.02
Я обычно использую команду awk для разбора файлов:
awk 'BEGIN {OFS = "\t"} {print $1, $2, $3, $4}'
Есть ли простой способ изменить эту команду для работы в подобных ситуациях?
Я думаю, что-то вроде этого может работать:
awk '{for(j=1;j<=NF;j++){if($j~/^ANC=/){print $j}}}'
Тем не менее, как я могу изменить это, чтобы также распечатать первые столбцы?
i=5
?