#!/usr/bin/perl use strict; open (GROUPFH, "<File1"); my @groups = (); while (my $line = <GROUPFH>) { chomp ($line); push (@groups, $line); } close (GROUPFH); open (USERFH, "File2"); my %group_to_users = (); while (my $line = <USERFH>) { chomp ($line); my ($user, @user_groups) = split ('\s+', $line); for my $group (@user_groups) { push (@{$group_to_users{$group}}, $user) if $group_to_users{$group}; $group_to_users{$group} = [$user] unless $group_to_users{$group}; } } close (USERFH); for my $group (@groups) { print $group . ":\n"; for my $user (@{$group_to_users{$group}}) { print $user . "\n"; } print "\n"; }
On Wed, 18 Aug 2004 09:08:25 -0400, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote: > Hi all, > > I have two files, one with group names and the other with user name and > groups. Can someone help with code that will enable me sort the data by > group name? Example: > > File 1 > > Group1 > Group 2 > Group ..n > > File 2 > > User name group1 group2 ... groupn > > Final result > > Group name : > user 1 > user 2 > user 3 > > Thanks > -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>