#!/usr/bin/env bash ##Author: guochangquan ##Copyright 202206 ##company: NuProbe set -e function usage() { echo "Usage: $0 [ -s ] [ -i ] [ -o ] [ -p ] [ -x ] [ -c ] " echo "-s sample name" echo "-p Pseudo Panel Type[MBY2|FeBY2]" echo "-i input fastq dir" echo "-x script_dir" echo "-o analysis_dir" echo "-c FMBY2 CNV outdir" } if [ $# -eq 0 ] then usage exit fi while getopts ":s:c:x:o:p:i:h" opt; do case $opt in i) fq_dir=$OPTARG ;; o) out_dir=$OPTARG ;; p) panel=$OPTARG ;; s) sample=$OPTARG ;; c) cnv_dir=$OPTARG ;; x) script_dir=$OPTARG ;; h) usage exit ;; \?) echo "Invalid option: -$OPTARG" > /dev/stderr usage exit ;; esac done echo "## Step 1 Starting ... ##" echo $script_dir echo "Input FASTQ dir:" $fq_dir echo "Output BAM dir:" $out_dir echo "Sample Name:" $sample echo "Sub-Panel Type:" $panel echo "CNV Analysis dir:" $cnv_dir . $script_dir/conf/conf.cfg #cd $out_dir/ test -d $out_dir/${sample} || mkdir ${out_dir}/${sample} cd ${out_dir}/${sample} ### FASTQ TRIM and Mapping test -s $sample.bam || sh $module/run_FQ2BAM_Speedseq.sh -s $sample -i $fq_dir -o $out_dir -x $script_dir ### SNV/INDEL CAll and annotation if [ "$panel" = "MBY2" ]; then target_call=$MBY2_target elif [ "$panel" = "FeBY2" ]; then target_call=$FeBY2_target else echo "Panel error !!" target_call=$target fi #test -s $sample.gatk.vcf.gz || sh $module/run_BAM2xlsx_SNV.sh -s $sample -o $out_dir -x $script_dir -b $split_target test -s $sample.vardict.vcf || sh $module/run_vardict_nt.sh -s $sample -o $out_dir/${sample} -p $panel -t $target_call -x $script_dir ### SV test -s $sample.sv.vcf.gz || sh $module/run_BAM2SV_Manta.sh -s $sample -o $out_dir/${sample} -p $panel -t $target_call -x $script_dir ### QC test -s $sample.QC.xls || sh $module/run_QC.sh -s $sample -o $out_dir -x $script_dir ### yesuan test -s yesuan/$sample.GT.xls || sh $module/run_yesuan.sh -s $sample -o $out_dir -p $panel -x $script_dir ### prepare for CNV test -s $cnv_dir/$sample.pcov || sh $module/run_CNV_prep.sh -s $sample -o $out_dir -x $script_dir -c $cnv_dir