Слияние этих файлов

Соответствуя рядам файлов в папке, название каждой пары файлов похоже на это с базовым именем, например

LP6005334-DNA_H01_vs_LP6005333-DNA_H01.passed.somatic.indels.vcf.parsed.txt

и

LP6005334-DNA_H01_vs_LP6005333-DNA_H01.passed.somatic.indels.vcf_fixed_vcf.txt.hg19_multianno.txt

Как я могу извлечь columns 5th and 6th из файлов с passed.somatic.indels.vcf.parsed в их имени файла и добавляют эти столбцы в подобранный файл (passed.somatic.indels.vcf_fixed_vcf.txt.hg19_multianno) возврат вывода .txt с базовым именем (LP6005334-DNA_H01_vs_LP6005333-DNA_H01)

Для вырезания столбцов я сделанный

[

fi1d18@cyan01 folder]$ for f in *.passed.somatic.indels.vcf.parsed.txt; do awk '{print $5,$6}' $f > $out
> done;
-bash: $out: ambiguous redirect

После этого я не знаю, как найти подобранную находку и добавить столбцы сокращения к этому

Это - ссылка пары этих файлов

https://www.dropbox.com/s/y4jx1rznswqz6dq/LP6008460-DNA_G03_vs_LP6008340-DNA_C05 __ объем плазмы 1.7 __ rg.grch37_g1k __ al.bwa_mem __. переданный somatic.indels.vcf_fixed_vcf.txt.hg19_multianno.txt? dl=0

и

0
задан 17 January 2020 в 20:02

1 ответ

Это зависит, как Ваши файлы разграничены, но необходимо смочь использовать что-то как

for f in *.vcf.parsed.txt; do 
  cut -f3,4 "$f" | paste "${f%.parsed.txt}_fixed_vcf.txt.hg19_multianno.txt" - > "${f%%.*}.txt"
done

Расширения ${f%.parsed.txt} и ${f%%.*} удалите, соответственно, самые короткие и самые длинные "точечные суффиксы" от циклично выполненного имени файла.


Для пары файла

LP6008336-DNA_H02_vs_LP6008333-DNA_H02.snp.pass.txt                     
LP6008336-DNA_H02_vs_LP6008333-DNA_H02.snp.pass.txt.hg19_multianno.txt

которые не соответствуют соглашению о присвоении имен в Вашем исходном вопросе, необходимо будет изменить соответствия шаблона соответственно

напр.

for f in *.pass.txt; do
    cut -f60,61 "$f" | paste "$f.hg19_multianno.txt" - > "${f%%.*}.txt"; 
done
2
ответ дан 19 January 2020 в 09:11

Другие вопросы по тегам:

Похожие вопросы: