Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env perl
- use strict;
- use warnings;
- use utf8;
- my $name;
- my $group;
- my $useraddcmd;
- my $password;
- my $passwdcmd;
- $name = getprop_must("enter username:");
- $group = getprop_opt("enter usergroup(default '$name'):");
- $useraddcmd = "useradd " . ($group ? " -g $group " : " ") . $name;
- system($useraddcmd) == 0 || die;
- $password = getprop_must("enter password for $name:");
- $password eq getprop_must("re-enter password for $name:") || die("error: password mismatch.");
- $passwdcmd = "yes $password | passwd $name > /dev/null 2>&1";
- system($passwdcmd);
- sub getprop_opt {
- my $prompt = shift;
- my $prop;
- print $prompt . $/;
- $prop = <STDIN>;
- $prop =~ s/^\s*([^\s]*)\s*$/$1/;
- return $prop;
- }
- sub getprop_must {
- my $prompt = shift;
- my $prop;
- do {
- $prop = getprop_opt($prompt);
- } while (!$prop);
- return $prop;
- }
Add Comment
Please, Sign In to add comment