Выберите первые два столбца в текстовом файле с разделителями табуляции и замените их символом «_»

У меня есть образец входного файла следующим образом

RF00001 1c2x    C   3   118 77.20   1.6e-20 1   119 f29242
RF00001 1ffk    9   1   121 77.40   1.4e-20 1   119 8e2511
RF00001 1jj2    9   1   121 77.40   1.4e-20 1   119 f29242
RF00001 1k73    B   1   121 77.40   1.4e-20 1   119 8484c0
RF00001 1k8a    B   1   121 77.40   1.4e-20 1   119 93c090
RF00001 1k9m    B   1   121 77.40   1.4e-20 1   119 ebeb30
RF00001 1kc8    B   1   121 77.40   1.4e-20 1   119 bdc000

Мне нужно извлечь второй и третий столбцы из текстового файла и заменить вкладку '_'

Желаемый выходной файл:

1c2x_C  
1ffk_9  
1jj2_9  
1k73_B  
1k8a_B  
1k9m_B  
1kc8_B

Я могу напечатать эти два столбца:

awk -F" " '{ print $2,$3 }' input.txt

но не может заменить вкладку '_' с помощью следующей команды

awk -F" " '{ print $2,'_',$3 }' input.txt

Всего 1 ответ


Не могли бы вы попробовать следующее.

awk '{print $2"_"$3}' Input_file

2-е решение:

awk 'BEGIN{OFS="_"} {print $2,$3}' Input_file

3-е решение: добавление sed раствора.

sed -E 's/[^ ]* +([^ ]*) +([^ ]*).*/1_2/' Input_file

Есть идеи?

10000