File: print.pl

package info (click to toggle)
trinityrnaseq 2.11.0%2Bdfsg-6
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 417,528 kB
  • sloc: perl: 48,420; cpp: 17,749; java: 12,695; python: 3,124; sh: 1,030; ansic: 983; makefile: 688; xml: 62
file content (50 lines) | stat: -rwxr-xr-x 867 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/usr/bin/env perl

unless (@params = @ARGV) {
    die "usage: $0 [-t|-s] <number list | range>\n";
}

$delimeter = pop @params;

if ($delimeter eq '-s' || $delimeter eq '-t') {
    if ($delimeter eq '-s') {
	$delimeter = '\s+';
    } elsif ($delimeter eq '-t') {
	$delimeter = '\t';
    }
    pop @ARGV;
} else {
    $delimeter = '\t';
}

if ($ARGV[0] =~ /(^\d+)\-(\d+)/) {
    #print "$1\t$2\n";
    @array = ($1 .. $2);
    
} else {
    @array = @ARGV;
}
    

foreach $entry (@array) {
    $here{$entry} = 1;
}


while (<STDIN>) {
    chomp;
    #my $tab = 0;
    @columns = split (/$delimeter/, $_);
    my $output = "";
    for ($i = 0; $i <= $#columns; $i++) {
		#if ($tab) { print "\t";}
		if ($here{$i}) {
			#print $columns[$i];
			$output .= "$columns[$i]\t";
			#$tab = 1;
		}
    }
	$output =~ s/\s+$//; # remove trailing ws.
    print "$output\n";
}