#! /usr/bin/perl
#=======================================================================

$FILEIN = "/tmp/passwd";
$PASSWD = "/tmp/passwd.new";
$GROUP = "/tmp/group.new";

#-----------------------------------------------------------------------
# Record letto.
#-----------------------------------------------------------------------
$riga = "";

#-----------------------------------------------------------------------
# Contatore.
#-----------------------------------------------------------------------
$contatore = 10000;

#=======================================================================
# Inizio del programma.
#-----------------------------------------------------------------------

open ( VECCHIO, "< $FILEIN" );
open ( PASSWD, "> $PASSWD" );
open ( GROUP, "> $GROUP" );

while ( $riga = <VECCHIO> ) {

    if ( $riga =~ m|^ *(.*):(.*):(.*):(.*):(.*):(.*):(.*) *$| ) {

        $utente		= $1;
	$password	= $2;
        $uid		= $3;
        $gid		= $4;
        $finger		= $5;
        $home		= $6;
        $shell		= $7;

	$contatore++;
	
	print PASSWD "$1:$2:$contatore:$contatore:$5:/home/$1:$7\n";
	print GROUP "$1::$contatore:\n";

	print STDOUT "$1:$2:$contatore:$contatore:$5:$6:$7\n";

    } else {
    
	print STDOUT "MANCA LA CORRISPONDENZA CON IL RECORD SEGUENTE\n";
	print STDOUT "$riga\n";
    }
}

close ( VECCHIO );
close ( PASSWD );
close ( GROUP ); 
