synced NH with JS counterpart
[jalview.git] / forester / archive / perl / file_proc.pl
1 #!/usr/bin/perl -w
2
3 my $in  = $ARGV[ 0 ];
4 my $out = $ARGV[ 1 ];
5
6 if ( -e $out ) {
7     print "File $out already exists.\n";
8     exit( -1 );
9
10
11 if ( !-e $in ) {
12     print "File $in does not exist.\n";
13     exit( -1 );
14
15
16 open( IN, $in ) ;
17 open ( OUT, ">>$out"  ) || die ( "Could not open file $out for writing!\n" );
18
19 while ( my $line = <IN> ) {
20     my $newline = &proc_line( $line );
21     if ( length( $newline ) > 0 ) {
22         print OUT $newline;
23     }
24 }
25
26
27 close( OUT ) or die( "can't close $out: $!" );
28 close( IN ) or die( "can't close $in: $!" );
29
30 sub proc_line {
31    my $line = shift;
32    
33    
34    if ( $line =~ /^#/ ) {
35        return "";
36    }
37    if ( $line =~ /^Predicted coding sequence\(s\):/ ) {
38        return "";
39    }
40    elsif ( $line =~ /^>.*_aa\s*$/ ) {
41        return "";
42    }
43    elsif ( $line =~ /^>/ ) {
44        return $line;
45    }
46    elsif ( $line !~ /[a-z]/ ) {
47        return "";
48    }
49    else {
50        return $line;;
51    } 
52 }