Pal, I have to files that I am trying to match:
Generated from rpm -qa > file1 file1 libstdc++-4.1.2-48.el5 info-4.8-14.el5 libICE-1.0.1-2.1 libacl-2.2.39-6.el5 lcms-1.18-0.1.beta1.el5_3.2 dmidecode-2.10-3.el5 ....... Generate from rpm -qa --queryformat '%{NAME}\n' > file2 file2 acl alacarte alchemist alsa-lib alsa-utils amtu apr apr-util aspell aspell-en .............. I am trying to list files that exist on file1 that are missing on file2 and have the following script: #! /usr/bin/perl use strict; #use warning; open MSRT, "/Users/williamm/Documents/file1" or die $!; open Test_server, "/Users/williamm/Documents/file2" or die $1; #open MSRT, "/Users/williamm/test1_rpm.txt" or die $1; #open Test_server, "/Users/williamm/test2_rpm.txt" or die $1; my $tom; my $msrt; while ($tom = <Test_server>) { chomp($tom); # print "T:$tom\n"; while ($msrt = <MSRT>) { chomp($msrt); # print "M:$msrt\n"; if ($msrt =~ /^\Q$tom\E/){ # if ($msrt =~ m/^$tom.*$/){ print "$tom: $msrt\n"; # print "Found\n"; } } } williamcomputer:~ williamm$ perl compareRPM.pl acl-2.2.39-6.el5: acl-2.2.39-6.el5 It does loop through the two files fine, but I think the regular expression is not working fine. It only match one RPM, but I have been able to find many others that should have matched. For example, this should have been printed out. krb5-libs-1.6.1-36.el5_4.1: krb5-libs Any idea of what tweak to the regular expression I need apply to make it work properly? Also, advice of a better way of solving this problem would also be appreciated. Thanks in advance William -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/