This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Trimmomatic - can`t find a path for to file

I simply need to run Trimmomatic, but he doesn`t see input files. May be you know how to deal with it?

#creating variables 
INPUT_DIR="path/folderinput"
OUTPUT_DIR="path/folderoutput"

APPENDIX=".fastq.gz"
APPENDIX1="_R1.fastq.gz"
APPENDIX2="_R2.fastq.gz"

TRIMMOMATIC="java -jar /home/path/trimmomatic-0.36.jar"

#creating a loop
for i in $INPUT_DIR/*$APPENDIX1
do
FORWARD=$(basename "$i")
REVERSE=${FORWARD/_R1.fastq.gz/$APPENDIX2}
FORWARDO=$OUTPUT_DIR/$FORWARD
REVERSEO=$OUTPUT_DIR/$REVERSE
FORWARDI=$i
REVERSE=${FORWARDI/_R1.fastq.gz/$APPENDIX2}

echo "Now I am processing PE reads $FORWARD and $REVERSE - Trimming"

$TRIMMOMATIC PE -phred33 -trimlog $FORWARDO_trim.log $FORWARDI $REVERSE ${FORWARDO%$APPENDIX}_trim.fastq.gz ${FORWARDO%$APPENDIX}_unpaired.fastq.gz ${REVERSEO%$APPENDIX}_trim.fastq.gz ${REVERSEO%$APPENDIX}_unpaired.fastq.gz ILLUMINACLIP:NexteraPE-PE.fa:2:30:10 MINLEN:75

echo "Done processing PE reads $FORWARD and $REVERSE - Trimming"

done

#And the error pops up 

Now I am processing PE reads 8764_R1.fastq.gz and path/folderinput/8764_R2.fastq.gz - Trimming
TrimmomaticPE: Started with arguments:
 -phred33 -trimlog .log path/folderinput/8764_R1.fastq.gz Valeria/AZV_DNA_profiling/Data/raw/210921_Tina_QIAseq_batch7/8764_R2.fastq.gz path/folderoutput/8764_R1_trim.fastq.gz path/folderoutput/8764_R1_unpaired.fastq.gz path/folderoutput/8764_R2_trim.fastq.gz path/folderoutput/8764_R2_unpaired.fastq.gz ILLUMINACLIP:NexteraPE-PE.fa:2:30:10 MINLEN:105
Using PrefixPair: 'AGATGTGTATAAGAGACAG' and 'AGATGTGTATAAGAGACAG'
Using Long Clipping Sequence: 'GTCTCGTGGGCTCGGAGATGTGTATAAGAGACAG'
Using Long Clipping Sequence: 'TCGTCGGCAGCGTCAGATGTGTATAAGAGACAG'
Using Long Clipping Sequence: 'CTGTCTCTTATACACATCTCCGAGCCCACGAGAC'
Using Long Clipping Sequence: 'CTGTCTCTTATACACATCTGACGCTGCCGACGA'
ILLUMINACLIP: Using 1 prefix pairs, 4 forward/reverse sequences, 0 forward only sequences, 0 reverse only sequences
Exception in thread "main" java.io.FileNotFoundException: path/folderinput/8764_R1.fastq.gz (No such file or directory)
    at java.base/java.io.FileInputStream.open0(Native Method)
    at java.base/java.io.FileInputStream.open(FileInputStream.java:213)
    at java.base/java.io.FileInputStream.<init>(FileInputStream.java:155)
    at org.usadellab.trimmomatic.fastq.FastqParser.parse(FastqParser.java:135)
    at org.usadellab.trimmomatic.TrimmomaticPE.process(TrimmomaticPE.java:264)
    at org.usadellab.trimmomatic.TrimmomaticPE.run(TrimmomaticPE.java:539)
    at org.usadellab.trimmomatic.Trimmomatic.main(Trimmomatic.java:80)
Done processing PE reads 8764_R1.fastq.gz and path/folderinput/8764_R2.fastq.gz - Trimming
trimmomatic

1 answer

Loud and clear: Exception in thread "main" java.io.FileNotFoundException: path/folderinput/8764_R1.fastq.gz (No such file or directory) The file does not exist. You must have edited your output or script or both somehow. Otherwise, I don't see how Valeria/AZV_DNA_profiling/Data/raw/210921_Tina_QIAseq_batch7/ could come into this. Therefore, the output you pasted is not identical to what your script would give. Also, try to simplify the script reducing the unnecessary variables.

Also do yourself a favor and use set -eux at the beginning of your script. That makes it much easier to debug.

Now I am processing PE reads File_1_R1.fastq.gz and path/folderinput/File_1_R2.fastq.gz - Trimming

In fact this is what your script really attempts to run:

java -jar /home/path/trimmomatic-0.36.jar PE -phred33 -trimlog .log path/folderinput/File_1_R1.fastq.gz path/folderinput/File_1_R2.fastq.gz path/folderoutput/File_1_R1_trim.fastq.gz path/folderoutput/File_1_R1_unpaired.fastq.gz path/folderoutput/File_1_R2_trim.fastq.gz path/folderoutput/File_1_R2_unpaired.fastq.gz ILLUMINACLIP:NexteraPE-PE.fa:2:30:10 MINLEN:75

Therefore, the command would run fine if the R1_ file really existed, except for the empty .log variable.

To fix this, change:

$FORWARDO_trim.log

to

${FORWARDO}_trim.log

Log in to answer this question.