2つのfastqファイルを投げるため、引数で読み込むのは面倒くさいのでスクリプト途中で読み込ませる方向で
#!/bin/sh #アノテーション情報を含むgtfファイル read -p "annotation infomation (full path) = " gtf #リファレンスファイルの指定 read -p "reference file (full path) = " ref echo "アノテーション情報は"$gtf"" echo "リファレンスファイルは"$ref"" #ファイルを取得 read -p "fastq file 1 = " file1 read -p "fastq file 2 = " file2 #2本のリード間の距離 read -p "distance of pair = " dpair #ファイル名を取り出す fname="${file1##*/}" echo "tophatでmappingを実行する" #出力するディレクトリを作る dir_name="${fname%.*}" mkdir -p ./tophat_results/"$dir_name" output_dir=./tophat_results/"$dir_name" #echo "出力先は./tophat_results/"$dir_name"" tophat -p 4 -r "$dpair" -G "$gtf" -o "$output_dir" "${ref%.*}" "$file1" "$file2" #-pは使用するcpuスレッド数 #-G [アノテーション情報.gtf] #-o [出力先] ないときはワーキングディレクトリに結果ファイルを生成 echo "---------------------------------------------" echo "accepted_hits.bamを"$output_dir"/"$dir_name"_th.bamに改名する" mv "$output_dir"/accepted_hits.bam "$output_dir"/"$dir_name"_th.bam echo "---------------------------------------------" echo ""$dir_name"_th.bamについてcufflinksを実行する" output_dir2=./tophat_results/"$dir_name"/cufflinks_results cufflinks -p 4 -g "$gtf" "$output_dir"/"$dir_name"_th.bam -o "$output_dir2" #-pは使用するcpuスレッド数 #-gを-GにするとアノテーションのあるリードのみFPKMを計算する echo "---------------------------------------------"
ただこれじゃ複数のファイルをまとめて投げられないので要改良