Precisa mesclar leituras em um arquivo

0

Eu preciso pegar três arquivos e mesclá-los em um. Eu tenho um total de 288 amostras onde nos seguintes arquivos eu tenho o mesmo número de amostra (S88)

  • Plate_3: 280_S88_L001_R1_001.fastq.gz
  • Plate_2: 184_S88_L001_R1_001.fastq.gz
  • Plate_1: 88_S88_L001_R1_001.fastq.gz

Foi-me dito para fazer o seguinte:

  1. Vá para o lugar onde você tem seus dados brutos.
  2. Você deve ter três pastas: Plate_1, Plate_2, Plate_3
  3. Execute este comando no terminal.

    for i in Plate_1/*.fastq.gz;do file=${i##*/};ls  Plate_1/$file Plate_2/$file Plate_3/$file;done
    

Plate_1 / 10_S10_L001_R1_001.fastq.gz Plate_2 / 10_S10_L001_R1_001.fastq.gz

Cada pasta deve ter o mesmo arquivo.

mkdir Merged_Plates
  1. Em seguida, execute o seguinte comando

    for i in Plate_1/*.fastq.gz;do file=${i##*/};cat   Plate_1/$file Plate_2/$file Plate_3/$file > Merged_Plates/$file;done
    

Isso irá mesclar suas amostras e colocá-las na pasta Merged_Plates

Se eu executar o comando loop para colocar cada pasta no mesmo arquivo, recebo o seguinte:

ls: cannot access Plate_2/10_S10_L001_R1_001.fastq.gz: No such file or directory
ls: cannot access Plate_3/10_S10_L001_R1_001.fastq.gz: No such file or directory
Plate_1/10_S10_L001_R1_001.fastq.gz

Então usei a pasta em que estava para executá-la para solucionar problemas:

for i in Raw_Data/*.fastq.gz;do file=${i##*/};ls  Plate_1/$file Plate_2/$file Plate_3/$file;done

Eu entendo isto: Plate_1 / 10_S10_L001_R1_001.fastq.gz Plate_2 / 148_S52_L001_R1_001.fastq.gz Plate_1 / 10_S10_L001_R2_001.fastq.gz Plate_2 / 148_S52_L001_R2_001.fastq.gz

Isso me diz que meus dados não estão no mesmo arquivo.

O que eu estou perdendo no comando?

    
por kimberly Wilson 19.01.2018 / 02:15

0 respostas