Le jeudi 17 mars 2005 � 17:28 +0100, Leenox a �crit :
> bonjour, 
Coucou!
> j'ai une liste d'utilisateur du type suivant nomm� "utilisateurs.txt": 
> login,group,/home donc concr�tement jai des s�quences du type:
> 
> yoann,administrateur,/data/samba/home/yoann
> teddy,developpeur,/data/samba/home/teddy
> tibo,commercial,/data/samba/home/tibo
> ....
> etc
> 
> Chaque champs �tant s�par� par une virgule, j'ai donc voulu faire un script 
> en perl pour automatiser tout ca mais je n'arrive pas � faire le script pour 
> parcourir le fichier et en extraire le login pour pouvoir ensuite comparer au 
> fichier /etc/passwd de mani�re a savoir si l'utilisateur existe ou non pour 
> pouvoir le cr�er.
> Voici mon code meme si il est cour:
> 
> #!/usr/bin/perl -w
> 
> open (FILEHANDLE, "<utilisateurs.txt") or die ("Impossible d'ouvrir 
> utilisateurs.txt");
> 
> while (<FILEHANDLE>)
> {
+       chomp();
-        @list = split(/,/, <FILEHANDLE>);
+       @list = split (/,/);
>         foreach $mot (@list) {
>             print $mot."\n";
>             }
> }
> close (FILEHANDLE);
> 
> Je suis bloqu� a ce niveau..
Ce n'est pas le handle qu'il faut r�interroger, mais la variable $_
implicite ici dans la fonction split.
De m�me, tu peux avantageusement am�liorer ton code dans la boucle
foreach:
        foreach (@list) {
                print $_ . "\n";
        }
> 

-- 
-----------------------------------------------------------------------
         Ma cl� GPG est disponible sur http://www.keyserver.net
-----------------------------------------------------------------------
                 _____________________________________________________
                |            Prot�gez votre vie priv�e:               |
      \|||/     | - Signez/chiffrez vos messages.                   __|
     q o - p    |            Respectez celle des autres:           | /
__mn__\_^_/_nm__| - Masquez les destinataires de vos mailings      |/
                |__________________________________________________/

Attachment: signature.asc
Description: Ceci est une partie de message =?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=

Répondre à