Como criar uma conta multiusuários?

0

Eu quero criar vários usuários com gerar senha e imprimir como arquivo de texto, como posso escrever no script de shell? (Ex: criar 5 usuários, comprimento da senha 10)

    
por user159093 16.05.2013 / 05:21

1 resposta

0

O script a seguir faz o que você pediu:

#!/usr/bin/perl   

my $user="user";
my $encrypted;
my $userno=1;
my $userstogenerate=6;

sub encryptingPsw {
  my $psw = shift;
  my $count = shift; 
  my @salt = ('.', '/', 'a'..'z', 'A'..'Z', '0'..'9');  
  my $salt = "";
  $salt.= $salt[rand(63)] foreach(1..$count);
  crypt($psw, $salt);
}

for ($userno;$userno<$userstogenerate;$userno++) {
    print "User name $userno: ";
    chomp (my $user = <STDIN>);
    $encrypted = &encryptingPsw('passwd', 4); 
    print "sudo useradd -p '$encrypted'  $user\n";
    @array = 'echo "Username: " $user "Password: " $encrypted >> users.txt';
}
@array = 'cat users.txt | lpr';

Novos usuários e suas senhas são gravados no arquivo users.txt . Se você tiver anexado à máquina uma impressora, o arquivo users.txt será impresso. Caso contrário, um erro aparecerá nesse sentido.

    
por Radu Rădeanu 16.05.2013 / 07:52