Commit patch to not break on spaces.
[bowtie.git] / scripts / make_h_sapiens_ncbi36.sh
1 #!/bin/sh
2
3 #
4 # Downloads sequence for H. sapiens (human) from NCBI.  This script was
5 # used to build the Bowtie index for H. sapiens.
6 #
7 # From README_CURRENT_BUILD:
8 #  Organism: Homo sapiens (human)
9 #  NCBI Build Number: 36
10 #  Version: 3
11 #  Release date: 24 March 2008
12 #
13
14 GENOMES_MIRROR=ftp://ftp.ncbi.nih.gov/genomes
15 FILE_PATH=${GENOMES_MIRROR}/H_sapiens/ARCHIVE/BUILD.36.3/Assembled_chromosomes
16
17 BOWTIE_BUILD_EXE=./bowtie-build
18 if [ ! -x "$BOWTIE_BUILD_EXE" ] ; then
19         if ! which bowtie-build ; then
20                 echo "Could not find bowtie-build in current directory or in PATH"
21                 exit 1
22         else
23                 BOWTIE_BUILD_EXE=`which bowtie-build`
24         fi
25 fi
26
27 for c in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 X Y ; do
28         if [ ! -f hs_ref_chr$c.fa ] ; then
29                 if ! which wget > /dev/null ; then
30                         echo wget not found, looking for curl...
31                         if ! which curl > /dev/null ; then
32                                 echo curl not found either, aborting...
33                         else
34                                 # Use curl
35                                 curl ${FILE_PATH}/hs_ref_chr$c.fa.gz
36                         fi
37                 else
38                         # Use wget
39                         wget ${FILE_PATH}/hs_ref_chr$c.fa.gz
40                 fi
41                 gunzip hs_ref_chr$c.fa.gz
42         fi
43         
44         if [ ! -f hs_ref_chr$c.fa ] ; then
45                 echo "Could not find hs_ref_chr$c.fa file!"
46                 exit 2
47         fi
48 done
49
50 # Special case: get mitochondrial DNA from its home
51 if [ ! -f hs_ref_chrMT.fa ] ; then
52         if ! which wget > /dev/null ; then
53                 echo wget not found, looking for curl...
54                 if ! which curl > /dev/null ; then
55                         echo curl not found either, aborting...
56                 else
57                         # Use curl
58                         curl ${GENOMES_MIRROR}/H_sapiens/CHR_MT/hs_ref_chrMT.fa.gz
59                 fi
60         else
61                 # Use wget
62                 wget ${GENOMES_MIRROR}/H_sapiens/CHR_MT/hs_ref_chrMT.fa.gz
63         fi
64         gunzip hs_ref_chrMT.fa.gz
65 fi
66
67 INPUTS=hs_ref_chr1.fa,hs_ref_chr2.fa,hs_ref_chr3.fa,hs_ref_chr4.fa,hs_ref_chr5.fa,hs_ref_chr6.fa,hs_ref_chr7.fa,hs_ref_chr8.fa,hs_ref_chr9.fa,hs_ref_chr10.fa,hs_ref_chr11.fa,hs_ref_chr12.fa,hs_ref_chr13.fa,hs_ref_chr14.fa,hs_ref_chr15.fa,hs_ref_chr16.fa,hs_ref_chr17.fa,hs_ref_chr18.fa,hs_ref_chr19.fa,hs_ref_chr20.fa,hs_ref_chr21.fa,hs_ref_chr22.fa,hs_ref_chrMT.fa,hs_ref_chrX.fa,hs_ref_chrY.fa
68
69 echo Running ${BOWTIE_BUILD_EXE} $* ${INPUTS} h_sapiens_asm
70 ${BOWTIE_BUILD_EXE} $* ${INPUTS} h_sapiens_asm
71
72 if [ "$?" = "0" ] ; then
73         echo "h_sapiens_asm index built:"
74         echo "   h_sapiens_asm.1.ebwt h_sapiens_asm.2.ebwt"
75         echo "   h_sapiens_asm.3.ebwt h_sapiens_asm.4.ebwt"
76         echo "   h_sapiens_asm.rev.1.ebwt h_sapiens_asm.rev.2.ebwt"
77         echo "You may remove hs_ref_chr*.fa"
78 else
79         echo "Index building failed; see error message"
80 fi