
beginner
Novice
Apr 23, 2009, 12:20 PM
Post #21 of 21
(912 views)
|
So i put in the prints
#!/usr/bin/perl use strict; use warnings; use Getopt::Std; use File::Copy; my $dir = "/home/test"; my @Files = <$dir/*.items>; my %object = (); foreach my $f (@Files) { open (IN, $f) or die "can't open infile\n"; my @items = <IN>; print @items; close (IN); my @unique = grep { ! $object{ $_ }++ } @items; open(OUT, ">tmp1"); print @unique; print(OUT @unique); close(OUT); print @unique; } exit And it gives the following output:
item 1 list new data; 1 red_bat, 2 blue_bat, 3 red_car, 4 red_ball, 5 green_bat, 6 orange_ball, 7 blue_car, 8 orange_ball, 9 purple_bat, 10 red_car, 11 purple_ball, 12 purple_ball, 13 red_ball, 14 green_ball, 15 orange_ball, 16 purple_ball, 17 red_car, 18 purple_bat, 19 orange_ 20 blue_bat, 21 red_ball, 22 orange_car, 23 blue_bat, 24 purple_ball, 25 green_car, 26 orange_car, 27 green_bat, end list; item 1 list new data; 1 red_bat, 2 blue_bat, 3 red_car, 4 red_ball, 5 green_bat, 6 orange_ball, 7 blue_car, 8 orange_ball, 9 purple_bat, 10 red_car, 11 purple_ball, 12 purple_ball, 13 red_ball, 14 green_ball, 15 orange_ball, 16 purple_ball, 17 red_car, 18 purple_bat, 19 orange_ 20 blue_bat, 21 red_ball, 22 orange_car, 23 blue_bat, 24 purple_ball, 25 green_car, 26 orange_car, 27 green_bat, end list; item 1 list new data; 1 red_bat, 2 blue_bat, 3 red_car, 4 red_ball, 5 green_bat, 6 orange_ball, 7 blue_car, 8 orange_ball, 9 purple_bat, 10 red_car, 11 purple_ball, 12 purple_ball, 13 red_ball, 14 green_ball, 15 orange_ball, 16 purple_ball, 17 red_car, 18 purple_bat, 19 orange_ 20 blue_bat, 21 red_ball, 22 orange_car, 23 blue_bat, 24 purple_ball, 25 green_car, 26 orange_car, 27 green_bat, end list; It seems to be just taking in the whole file and and choosing duplicates. I'm not to sure how to select just for the colour_object? Thanks again!
|