Advertisement
Guest User

Untitled

a guest
May 15th, 2017
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.29 KB | None | 0 0
  1. #!/usr/bin/perl
  2.  
  3. # Manage_Users (P.Burghouwt 2005 THRijswijk)
  4.  
  5. # Eenvoudig voorbeeld om gebruikers toe te voegen of te verwijderen.
  6.  
  7. # (Voor lab, dus niet bedoeld voor serieus gebruik)
  8.  
  9. # Gebruik als root: #Manage_Users <file>
  10.  
  11. # Waarbij <file> een tekstfile is met op elke regel drie velden
  12.  
  13. # <add/remove> <user> <password>
  14.  
  15. use warnings;
  16.  
  17. use strict;
  18.  
  19. my $user;
  20.  
  21. my $password;
  22.  
  23. my $line;
  24.  
  25. my $filename;
  26.  
  27. #Controle op meegegeven filenaam
  28.  
  29. die "ERROR: Usage $0 <list> !\n ...with <list> is file containing status user and password on
  30.  
  31. each line.\n\n" unless (@ARGV == 1);
  32.  
  33. ($filename) = @ARGV;
  34.  
  35. die "ERROR: Cannot open $filename !\n\n" unless (open(IN, $filename));
  36.  
  37. for (<IN>){ #alle regels in de file doorlopen
  38.  
  39. if(/^add\s+(\w+)\s+(\w+)/) { #regexp: controle op add
  40.  
  41. $user=$1;
  42.  
  43. $password=$2;
  44.  
  45. `useradd $user`;
  46.  
  47. `echo $password | passwd $user`; #truc om password mee te geven
  48.  
  49. print("Added ", $user, " - ", $password, " \n");
  50.  
  51. };
  52.  
  53. if(/^remove\s+(\w+)/) { #regexp: controle op remove
  54.  
  55. $user=$1;
  56.  
  57. `tar cz /home/$user > archief.tar.gz`;
  58.  
  59. `userdel $user`;
  60.  
  61. `rm -rf /home/$user`;
  62.  
  63. print("Removed ", $user, " \n");
  64.  
  65. };
  66.  
  67. if(/^recover\s+(\w+)/) { #regexp: controle op remove
  68.  
  69. $user=$1;
  70.  
  71. `tar -xzvf archief.tar.gz -C /home`;
  72.  
  73. };
  74.  
  75. };
  76.  
  77. close(IN);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement