On May 6, 10:08 am, [EMAIL PROTECTED] (Gunnar Hjalmarsson) wrote: > perl_learner wrote: > > On May 5, 3:26 am, [EMAIL PROTECTED] (Gunnar Hjalmarsson) wrote: > > >> my @kits = qw( aaa.t.z aaa_d.t.z bbb.t.z bbb_d.t.z > >> ccc.t.z ccc_d.t.z ddd.t.z eee.t.z ); > > >> my %hash = map { > >> ( my $tmp = $_) =~ s/_d(\.t\.z)$/$1/; $tmp => 1 > >> } grep /_d\.t\.z$/, @kits; > > >> foreach my $kit ( grep !/_d\.t\.z$/, @kits ) { > >> print "$kit\n" unless $hash{$kit}; > >> } > > > Thanks for your reply. It works out if I use qw option. However I have > > bigger list. I am sending my program, it provides me both *_d.t.Z as > > well as *Z list. Not doing the comparison. > > You should never ask for help on a list with fixing buggy code if you > haven't first asked Perl for help. > > use strict; > use warnings; > > > $KIT_LOCATION="/lnx/dep/packages"; > > $KIT_LIST=`ls $KIT_LOCATION/*.t.Z`; > > #print $KIT_LIST; > > $KIT_LIST=~ s/$KIT_LOCATION\///g; > > #print $KIT_LIST; > > my @kits = $KIT_LIST; > > How many elements do you think there are in @kits? > > my @kits = split ' ', $KIT_LIST; > > > chomp ($kits); > > ---------^ > > > #print "@kits";###prints out both .Z and _d.t.Z > > > my %hash = map { > > ( my $tmp = $_) =~ s/_d(\.t\.Z)$/$1/; $tmp => 1 > > } grep /_d\.t\.Z$/, @kits; > > > #print "@kits\n"; #prints out both .Z and _d.t.Z > > > foreach my $kit ( grep !/_d\.t\.Z$/, @kits ) { > > #print "$kit\n" unless $hash{$kit}; #prints out both .Z and > > _d.t.Z > > } > > -- > Gunnar Hjalmarsson > Email:http://www.gunnar.cc/cgi-bin/contact.pl- Hide quoted text - > > - Show quoted text -
Gunner, Thanks a lot for telling me to use > use strict; > use warnings; These helped me a lot. I had to declare both variables $KIT_LOCATION, $KIT_LIST correctly by putting "my" before them. Also with little change, "my @kits = split ' ', $KIT_LIST; ## added an extra space to split" I am getting the desired output. I have > How many elements do you think there are in @kits? I have ~100 elements @kits. Why did you ask this question? Is it going to be an issue if the numebr of elements get bigger? Do you have any more suggestion. Again, thanks a lot :) Regards, Shahriar -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] http://learn.perl.org/