inputpath=/data/data
outputpath=/data/result
##
for file in `ls ${inputpath}/*.fq.gz`
do
j=`basename $file`
echo ${j%%.*} >> ${outputpath}/name.txt
done
cut -d'.' -f 1 ${outputpath}/name.txt |sort|uniq > ${outputpath}/name.uniq.txt
## step 1 filter
for j in `cat ${outputpath}/name.uniq.txt`
do
java -jar /home/biosoft/Trimmomatic-0.38/trimmomatic-0.38.jar PE \
-threads 20 -phred33 \
-trimlog ${outputpath}/${j}.trim.log \
${inputpath}/${j}.r1.fq.gz ${inputpath}/${j}.r2.fq.gz \
${outputpath}/${j}.r1.paired.fq.gz ${outputpath}/${j}.r1.unpaired.fq.gz ${outputpath}/${j}.r2.paired.fq.gz ${outputpath}/${j}.r2.unpaired.fq.gz \
MINLEN:150 AVGQUAL:30
done
## step 2 deal host
for j in `cat ${outputpath}/name.uniq.txt`
do
/home/biosoft/bowtie2-2.3.5.1/bowtie2 \
-p 20 -x /data/database/hg38/hg38_bowtie2/hg38 \
-1 ${outputpath}/${j}.r1.paired.fq.gz \
-2 ${outputpath}/${j}.r2.paired.fq.gz \
-S ${outputpath}/${j}.sam \
--un-conc-gz ${outputpath}/${j}.human.fq.gz
done
## step 3 assemble not good (optional)
for j in `cat ${outputpath}/name.uniq.txt`
do
/data/lijing/download_software/MEGAHIT-1.2.9-Linux-x86_64-static/bin/megahit \
-1 ${outputpath}/${j}.human.fq.1.gz \
-2 ${outputpath}/${j}.human.fq.2.gz \
-o ${outputpath}/${j}
done
## step 4 ### judge contig good/bad (optional)
for j in `cat ${outputpath}/name.uniq.txt`
do
python /data/lijing/download_software/quast/quast-5.0.2/quast.py \
${outputpath}/${j}/final.contigs.fa \
-t 15 -o ${outputpath}/${j}
done
## step 5 annotate
for j in `cat ${outputpath}/name.uniq.txt`
do
/data/lijing/download_software/kraken2/kraken2 \
--threads 20 --db /data/lijing/download_software/kraken2_database/viral \
--minimum-hit-groups 3 \
--output ${outputpath}/${j}.classify.out.xls \
--unclassified-out ${outputpath}/${j}.unclassfided.fa \
--classified-out ${outputpath}/${j}.classfided.fa \
--report ${outputpath}/${j}.report.out.xls \
${outputpath}/${j}/final.contigs.fa && \
/usr/bin/python3 /data/lijing/test_mngs_line/classify_kraken_out.py \
-i1 ${outputpath}/${j}.report.out.xls \
-o1 ${outputpath}/${j}.classify.last.xls
done
## step 6 RGI
/home/lijing/miniconda3/envs/mpa/bin/rgi load \
--card_json /data/lijing/download_software/RGI/card.json \
--debug --local \
--card_annotation /data/lijing/download_software/RGI/card_database_v3.2.6.fasta \
--card_annotation_all_models /data/lijing/download_software/RGI/card_database_v3.2.6_all.fasta
for j in `cat ${outputpath}/name.uniq.txt`
do
/home/lijing/miniconda3/envs/mpa/bin/rgi bwt \
-1 ${outputpath}/${j}/final.contigs.fa \
--local \
-o ${outputpath}/${j}/${j}
done
run_mngs_line_update-ngs-pipeline
于 2023-12-22 16:31:54 首次发布