Прикрепить имя к первому столбцу файла - PullRequest
0 голосов
/ 29 мая 2018

У меня есть список файлов, которые имеют одинаковое имя файла, но находятся в разных подпапках.Значения в файлах разделяются с помощью вкладки.

Я хотел бы присоединить ко всем файлам "test.txt" дополнительный первый столбец с именем Foldername и, если объединить в один файл в конце (онивсе имеют одинаковый заголовок для столбцов).Но самая важная команда - это слияние.Сейчас я пробовал много команд, которые не работали, поэтому я думаю, что пропустил важный шаг с awk ...

Текущая структура:

mainfolder

    |_>Folder1
       |_>test.txt
    |->Folder2
       |_>test.txt
    .
    .
    .

Это где я хотел бычтобы получить доступ к каждому файлу перед объединением всех,

#Name   Count   FragCount   Type    Left    LeftB   Right   RightB  Support FRPM    LeftBD  LeftBE  RightBD RightBE annots
RFP1A   13  10  REF RFP1A_ins   chr3:3124352:+  RFP1A_ins chr3:5234143:+ confirmed  0.86    TA 1.454    AC 1.564 ["INTRACHROM."]

#Samplename #Name   Count   FragCount   Type    Left    LeftB   Right   RightB  Support FRPM    LeftBD  LeftBE  RightBD RightBE annots
Sample1 RFP1A   13  10  REF RFP1A_ins   chr3:3124352:+  RFP1A_ins chr3:5234143:+ confirmed  0.86    TA 1.454    AC 1.564 ["INTRACHROM."]

Большое спасибо !!

D

1 Ответ

0 голосов
/ 29 мая 2018

Я считаю, что это может помочь:

$ cd mainfolder
$ awk '(NR==1){sub("#","#Samplename\t"); print}                # print header
       (FNR==1){next}                                          # skip header
       {print substr(FILENAME,1,match(FILENAME,"/")-1)"\t"$0 } # add directory
      ' */test.txt > /path/to/newfile.txt
...