galaxy-central / tools / filters / fixedValueColumn.pl

#! /usr/bin/perl -w

use strict;
use warnings;

# fixedValueColumn.pl $input $out_file1 "expression" "iterate [yes|no]"

my ($input, $out_file1, $expression, $iterate) = @ARGV;
my $i = 0;
my $numeric = 0;

die "Check arguments\n" unless @ARGV == 4;

open (DATA, "<$input") or die "Cannot open $input:$!\n";
open (OUT,  ">$out_file1") or die "Cannot create $out_file1:$!\n";

if ($expression =~ m/^\d+$/) {
  $numeric = 1;
  $i = $expression;
}

while (<DATA>) {
  chop;
  if ($iterate eq "no") {
    print OUT "$_\t$expression\n";
  } else {
    print OUT "$_\t$i\n" if $numeric == 1;
    print OUT "$_\t$expression-$i\n" if $numeric == 0;
    ++$i;
  }
}

close DATA;
close OUT;
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.