#!/usr/bin/perl

use strict;

my $filename = shift;
if(not defined $filename) {
  die("I need an output filename");
}
my $alias_file = shift;
my(%aliases);
if(-f $alias_file) {
  open(ALIAS,"<",$alias_file);
  while(<ALIAS>) {
    if(/(\S+)(\s+)(\S+)/) {
      $aliases{$1} = $3;
    }
  }
  close(ALIAS);
}

while(<>) {
  if(/^(\d+) (\S+)/) {
    my $key;
    my $alias;
    my($host) = $2;
    foreach $key (keys %aliases) {
      $alias = $aliases{$key};
      if ($host =~ /${key}$/) {
        $host = $alias
      }
    }
    open(OUT,">>$filename.$host");
    print OUT $_;
    close(OUT);
  }
}
