为数据创建多个配置文件

为数据创建多个配置文件

我有pairs.eg Sample_27931_RN​​AX_形式的数据文件R1.fastq.gz 和 FASTQ/Sample_27931_RN​​AX_R2.fastq.gz 属于一个样本。下面我显示了 3 个样本的数据,每个样本都有 R1 和 R2 对。

为了运行分析,我分别创建了它们的路径列表。因此 list1 包含所有 R1,list2 包含所有 R2。

这是 3 个样本的列表 1

$TMPDIR/FASTQ/Sample_27931_RNAX_R1.fastq.gz 
$TMPDIR/FASTQ/Sample_28891_RNAX_R1.fastq.gz 
$TMPDIR/FASTQ/Sample_28897_RNAX_R1.fastq.gz

这是 3 个样本的列表2

$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_RN​​AX 的 Sample_27931_RN​​AX.config.txt。任何建议或任何类似帖子的链接都会很好。我找不到类似的帖子。

谢谢,

罗恩

答案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 的名称。

相关内容