如何写shell脚本

如何写shell脚本

这篇文章主要为大家展示了“如何写shell脚本”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何写shell脚本”这篇文章吧。

 脚本

用途:输入全基因组重测序的fastq文件和使用bowtie2构建的叶绿体参考基因组索引,提取全基因组重测序数据中的叶绿体基因组的数据

fq1=$1
fq2=$2
reference=$3


fq_file_name_1="${fq1%%.*}"
fq_file_name_2="${fq2%%.*}"
output_prefix="${fq1%%_*}"

bowtie2 -q -x ${reference} -1 ${fq_file_name_1}.fastq -2 ${fq_file_name_2}.fastq -p 8 -S ${output_prefix}.sam

echo '1 alignment done'

samtools view -S -b -o ${output_prefix}.bam ${output_prefix}.sam

echo '2 sam convert to bam done'

samtools sort -n -O bam -o ${output_prefix}.sorted.bam ${output_prefix}.bam

echo '3 sort by read name done'

samtools view -u -f 1 -F 12 ${output_prefix}.sorted.bam > ${output_prefix}.sorted.aligned.bam

echo '4 extract aligned reads done'

bamToFastq -i ${output_prefix}.sorted.aligned.bam -fq mapped_R1.fastq -fq2 mapped_R2.fastq

echo '5 The result files are mapped_R1.fastq and mapped_R2.fastq'

 

使用方法是

bash practice.sh input_1.fastq input_2.fastq reference/cp_index
 

使用前提是samtools、bowtie2、和bamToFastq已经安装并且添加到了环境变量

 额外内容

将一台服务器上的文件拷贝到本机https://zhuanlan.zhihu.com/p/22482509

如何写shell脚本  
image.png


以上是“如何写shell脚本”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!