X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=rsem-plot-transcript-wiggles;h=efe00ba91863d7125268d0e492d602ae6b9cbeb7;hb=dbcf1cfb8ad1086c21d64e249f012809403e7ddc;hp=5054f5bc0d4fa3256bc4ac4899162c4b4e570847;hpb=227db580833c14aa755c84ccb5401ce8c298e225;p=rsem.git diff --git a/rsem-plot-transcript-wiggles b/rsem-plot-transcript-wiggles index 5054f5b..efe00ba 100755 --- a/rsem-plot-transcript-wiggles +++ b/rsem-plot-transcript-wiggles @@ -2,9 +2,12 @@ use Getopt::Long; use Pod::Usage; -use File::Basename; +use FindBin; +use lib $FindBin::Bin; use strict; +use rsem_perl_utils; + my $gene_list = 0; # default is 0, means input is a transcript list; 1 means input is a gene list my $show_unique = 0; # 0, default value, means do not show unique transcript wiggles; 1 means show unique transcript wiggles my $help = 0; @@ -16,11 +19,15 @@ GetOptions("gene-list" => \$gene_list, pod2usage(-verbose => 2) if ($help == 1); pod2usage(-msg => "Invalid number of arguments!", -exitval => 2, -verbose => 2) if (scalar(@ARGV) != 3); -my ($fn, $dir, $suf) = fileparse($0); +my $dir = "$FindBin::Bin/"; my $command = ""; +unless (-e "$ARGV[0].transcript.sorted.bam") { + $command = $dir."sam/samtools sort $ARGV[0].transcript.bam $ARGV[0].transcript.sorted"; + &runCommand($command); +} unless (-e "$ARGV[0].transcript.readdepth") { - $command = $dir."rsem-bam2readdepth $ARGV[0].transcript.sorted.bam > $ARGV[0].transcript.readdepth"; + $command = $dir."rsem-bam2readdepth $ARGV[0].transcript.sorted.bam $ARGV[0].transcript.readdepth"; &runCommand($command); } @@ -34,7 +41,7 @@ if ($show_unique) { &runCommand($command); } unless (-e "$ARGV[0].uniq.transcript.readdepth") { - $command = $dir."rsem-bam2readdepth $ARGV[0].uniq.transcript.sorted.bam > $ARGV[0].uniq.transcript.readdepth"; + $command = $dir."rsem-bam2readdepth $ARGV[0].uniq.transcript.sorted.bam $ARGV[0].uniq.transcript.readdepth"; &runCommand($command); } } @@ -42,20 +49,6 @@ if ($show_unique) { $command = $dir."rsem-gen-transcript-plots $ARGV[0] $ARGV[1] $gene_list $show_unique $ARGV[2]"; &runCommand($command); -# command, {err_msg} -sub runCommand { - print $_[0]."\n"; - my $status = system($_[0]); - if ($status != 0) { - my $errmsg; - if (scalar(@_) > 1) { $errmsg = $_[1]; } - else { $errmsg = "\"$command\" failed! Plase check if you provide correct parameters/options for the pipeline!"; } - print $errmsg."\n"; - exit(-1); - } - print "\n"; -} - __END__ =head1 NAME @@ -64,11 +57,7 @@ rsem-plot-transcript-wiggles =head1 SYNOPSIS -=over - - rsem-plot-transcript-wiggles [options] sample_name input_list output_plot_file - -=back +rsem-plot-transcript-wiggles [options] sample_name input_list output_plot_file =head1 ARGUMENTS