Mercurial > repos > dereeper > sniplay3
comparison snpEff/.svn/text-base/SnpEff.pl.svn-base @ 20:13cff72ec2d3 draft
Uploaded
| author | dereeper |
|---|---|
| date | Mon, 23 Mar 2015 05:30:36 -0400 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 19:a0a95688cf17 | 20:13cff72ec2d3 |
|---|---|
| 1 #!/usr/bin/perl | |
| 2 | |
| 3 use strict; | |
| 4 use Getopt::Long; | |
| 5 | |
| 6 my $usage = qq~Usage:$0 <args> [<opts>] | |
| 7 where <args> are: | |
| 8 -i, --input <input VCF> | |
| 9 -o, --output <output> | |
| 10 -g, --gff <GFF annotation> | |
| 11 -f, --fasta <Fasta of chromosomes> | |
| 12 -h, --html <HTML output> | |
| 13 ~; | |
| 14 $usage .= "\n"; | |
| 15 | |
| 16 my ($input,$output,$gff,$fasta,$html); | |
| 17 | |
| 18 | |
| 19 GetOptions( | |
| 20 "input=s" => \$input, | |
| 21 "output=s" => \$output, | |
| 22 "gff=s" => \$gff, | |
| 23 "fasta=s" => \$fasta, | |
| 24 "html=s" => \$html | |
| 25 ); | |
| 26 | |
| 27 | |
| 28 die $usage | |
| 29 if ( !$input || !$output || !$fasta || !$gff || !$html); | |
| 30 | |
| 31 | |
| 32 if (!-e $gff){ | |
| 33 die "Error: GFF input does not exist\n" | |
| 34 } | |
| 35 if (!-e $fasta){ | |
| 36 die "Error: Fasta input does not exist\n" | |
| 37 } | |
| 38 | |
| 39 my $SNPEFF_PATH = "/usr/local/bioinfo/galaxy/galaxy_dist/tools/SNiPlay/SnpEff/snpEff"; | |
| 40 #my $SNPEFF_PATH = $ENV{SNPEFF_JAR_PATH}; | |
| 41 | |
| 42 | |
| 43 my $session = $$; | |
| 44 mkdir($session); | |
| 45 mkdir("$session/data"); | |
| 46 mkdir("$session/data/genomes"); | |
| 47 mkdir("$session/data/myspecies"); | |
| 48 | |
| 49 system("cp -rf $fasta $session/data/genomes/myspecies.fa"); | |
| 50 system("cp -rf $gff $session/data/myspecies/genes.gff"); | |
| 51 | |
| 52 open(my $C,"$SNPEFF_PATH/snpEff.config"); | |
| 53 open(my $C2,">$session/snpEff.config"); | |
| 54 while(<$C>) | |
| 55 { | |
| 56 if (/data_dir/) | |
| 57 { | |
| 58 print $C2 "data_dir = ./data\n"; | |
| 59 } | |
| 60 elsif (/^genomes/) | |
| 61 { | |
| 62 print $C2 "genomes : \\n"; | |
| 63 print $C2 "myspecies, myspecies \\n"; | |
| 64 } | |
| 65 else | |
| 66 { | |
| 67 print $C2 $_; | |
| 68 } | |
| 69 } | |
| 70 print $C2 "myspecies.genome : myspecies\n"; | |
| 71 close($C); | |
| 72 close($C2); | |
| 73 | |
| 74 | |
| 75 my $build_cmd = "/usr/local/jre/bin/java -jar $SNPEFF_PATH/snpEff.jar build -c $session/snpEff.config -gff3 myspecies"; | |
| 76 system($build_cmd); | |
| 77 | |
| 78 my $eff_cmd = "/usr/local/jre/bin/java -jar $SNPEFF_PATH/snpEff.jar eff -c $session/snpEff.config -o vcf -no-downstream -no-upstream myspecies -s $html $input >$output"; | |
| 79 system($eff_cmd); | |
| 80 | |
| 81 | |
| 82 system("rm -rf $session"); |
