[debutant] Probleme script perl
Bonjour, j'ai commencé à plancher sur le language perl car je voudrais créer un script qui puisse ajouter des utilisateurs sur proftpd via la commande ftpasswd.
Voici mon script actuel (c'est juste un début soyez indulgent :)) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
#!/usr/bin/perl -w
use strict;
print "\nAjouter un utilisateur dans ProFTPD\n";
print "\nEntrer le nom d'utilisateur ftp : ";
my $login = <stdin>;
chomp $login;
print "Creation de l'utilisateur $login\n";
print " Entrez l'id de $login : ";
my $id = <stdin>;
chomp $id;
print "L'id de $login est $id\n";
print "Choisir le chemin de l'utilisateur ftp : ";
my $home = <stdin>;
chomp $home;
print "Creation de l'utilisateur $login en cours ...\n";
my $result1 = `ftpasswd --passwd --file=/usr/local/etc/ftp.passwd --name=$login --uid=$id --gid=1050 --home=$home --shell=/bin/false`;
print "$result1"; |
Mon principal problème vient du faite que quand j'arrive au moment ou normalement après avoir entrée le chemin de l'utilisateur (/home/site/ftp), le programme se bloque et n'affiche pas la partie ou le mot de passe doit être entrer pour l'utilisateur (la partie "mot de passe" s'affiche s'affiche mais uniquement après les avoir rentrés à l'aveuglette) :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
Ajouter un utilisateur dans ProFTPD
Entrer le nom d'utilisateur ftp : test
Creation de l'utilisateur test
Entrez l'id de test : 1111
L'id de test est 1111
Choisir le chemin de l'utilisateur ftp : /home/site/ftp
Creation de l'utilisateur test en cours ...
ftpasswd: --passwd: missing --gid argument: default gid set to uid
----> blocage ici <------- |
partie "mot de passe" qui s'affiche après les avoir tapés :
Code:
1 2 3 4 5
|
Password:
Re-type password:
ftpasswd: entry created |
Et voila le résultat :
Code:
1 2 3
|
cat ftp.passwd | grep test
test:$1$oG7WPS3j$AlsCymBRm6xEo6ZKR6c221:1111:1111::/home/site/ftp:/bin/false |
si quelqu'un pouvait m'aider pour arranger ce bout de code.
merci d'avance.