
У меня есть файлы данных в виде пар. например Sample_27931_RNAX_Р1.fastq.gz и FASTQ/Sample_27931_RNAX_Р2.fastq.gz принадлежат одному образцу. Ниже я показал данные для трех образцов, каждый из которых имеет пары R1 и R2.
Для запуска анализа я создаю список путей по отдельности. Таким образом, список 1 содержит все R1, а список 2 содержит все R2.
Вот список1 для 3 образцов
$TMPDIR/FASTQ/Sample_27931_RNAX_R1.fastq.gz
$TMPDIR/FASTQ/Sample_28891_RNAX_R1.fastq.gz
$TMPDIR/FASTQ/Sample_28897_RNAX_R1.fastq.gz
Вот список2 для 3 образцов
$TMPDIR/FASTQ/Sample_27931_RNAX_R2.fastq.gz
$TMPDIR/FASTQ/Sample_28891_RNAX_R2.fastq.gz
$TMPDIR/FASTQ/Sample_28897_RNAX_R2.fastq.gz
Я хочу создать файлы конфигурации для каждого образца (всего 3). Файл конфигурации нужно создать отдельно для каждого образца.
Пример файла конфигурации приведен ниже:
**fastq1 = $TMPDIR/FASTQ/Sample_27931_RNAX_R1.fastq.gz**
**fastq2 = $TMPDIR/FASTQ/Sample_27931_RNAX_R2.fastq.gz**
mailto = [email protected]
thread_no = 8
detect_integration = yes # if no is provided, VirusFinder will not detect virus integrations
detect_mutation = no # if no is provided, VirusFinder will not detect viral mutations
Параметры fastq1 и fastq2 необходимо изменить, используя пути из list1 и list2, но остальная часть содержимого остается прежней. Как создать несколько файлов конфигурации, используя list1 и list2? Имя файла конфигурации должно автоматически браться из имени образца, например Sample_27931_RNAX.config.txt для Sample_27931_RNAX. Любые предложения или ссылки на похожие посты будут приветствоваться. Я не смог найти похожие посты.
Спасибо,
Рон
решение1
#!/bin/bash
while IFS= read -r samp1; do
b=${samp1%_R1.fastq.gz} samp2=${b}_R2.fastq.gz
cat - <<eof > "${b##*/}.cfg"
**fastq1 = $samp1**
**fastq2 = $samp2**
mailto = [email protected]
thread_no = 8
detect_integration = yes # if no is provided, VirusFinder will not detect virus integrations
detect_mutation = no # if no is provided, VirusFinder will not detect viral
eof
done < LIST1
Обратите внимание, что List2 на самом деле не является необходимым, поскольку мы можем перенести имя второго примера fastq из самого первого.