#!/usr/bin/perl -w use strict; open (IN, ARGV[0]); my %assem = (); while(my $line = ){ chomp $line; my @parseblast = split(/\s+/, $line); $parseblast[0] =~ s/\s+//g; $parseblast[1] =~ s/\s+//g; print $parseblast{0}."\n"; $assem{$parseblast[0]} = $parseblast[1]; } close IN; open(IN, $ARGV[1]); my %clc = (); while(my $line = ){ chomp $line; my @assemblast = split(/\s+/, $line); $assemblast[0] =~ s/\s+//g; $assemblast[1] =~ s/\s+//g; print $assemblast[0]."\n"; $clc{$assemblast[0]} = $assemblast[1]; } close IN; my $c=0 while(my $k = each(%assemblast)){ if($clc{$assemblast{$k}} eq $k){ $ c++; } } print $c; #### perl compareAssemblies.pl Assembly1.fa Assembl2.fa #### syntax error at compareAssem.pl line 4, near "ARGV[" Global symbol "%parseblast" requires explicit package name at compareAssem.pl line 11. Global symbol "%assemblast" requires explicit package name at compareAssem.pl line 29. syntax error at compareAssem.pl line 29, near "){" Global symbol "%assemblast" requires explicit package name at compareAssem.pl line 30. Global symbol "$k" requires explicit package name at compareAssem.pl line 30. Global symbol "$k" requires explicit package name at compareAssem.pl line 30. Global symbol "$c" requires explicit package name at compareAssem.pl line 31. Global symbol "$c" requires explicit package name at compareAssem.pl line 34. Execution of compareAssem.pl aborted due to compilation errors.