diff --git a/tools/filters/cutWrapper.pl b/tools/filters/cutWrapper.pl index db5cc3c186c..484305202fd 100644 --- a/tools/filters/cutWrapper.pl +++ b/tools/filters/cutWrapper.pl @@ -9,6 +9,9 @@ my @in = (); my @out = (); my $command = ""; my $field = 0; +my $start = 0; +my $end = 0; +my $i = 0; # a wrapper for cut for use in galaxy # cutWrapper.pl [filename] [columns] [delim] [output] @@ -20,6 +23,13 @@ foreach ( split /,/, $ARGV[1] ) { if (m/^c\d{1,}$/i) { push (@columns, $_); $columns[@columns-1] =~s/c//ig; + } elsif (m/^c\d{1,}-c\d{1,}$/i) { + ($start, $end) = split(/-/, $_); + $start =~ s/c//ig; + $end =~ s/c//ig; + for $i ($start .. $end) { + push (@columns, $i); + } } } diff --git a/tools/filters/cutWrapper.xml b/tools/filters/cutWrapper.xml index 81f55ae5aff..ab2365b6459 100644 --- a/tools/filters/cutWrapper.xml +++ b/tools/filters/cutWrapper.xml @@ -1,4 +1,4 @@ - + columns from a table cutWrapper.pl $input "$columnList" $delimiter $out_file1 @@ -141,6 +141,12 @@ + + + + + + @@ -191,6 +197,11 @@ Input dataset (six columns: c1, c2, c3, c4, c5, and c6):: + 0 gene1 chr1 + 0 gene2 chr2 +**cut** on columns "**c1-c3**" will return:: + + chr1 10 1000 + chr2 100 1500 + **cut** on columns "**c8,c7,c4**" will return::