Advertisement
Guest User

Untitled

a guest
Jun 25th, 2017
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.82 KB | None | 0 0
  1. #!/usr/bin/perl
  2.  
  3. use strict;
  4. use warnings;
  5. use Getopt::Std;
  6.  
  7. my $logdir = "/var/log/sudosh/";
  8. my %h = ();
  9. my %o = ();
  10. my $unknown = 0;
  11.  
  12. getopts('hd:vV', \%o);
  13.  
  14. sub listing ($) {
  15. my $ref = shift;
  16. opendir(DIR, $logdir) or die "can't opendir $logdir: $!";
  17. while (defined(my $sudoshlogs = readdir(DIR))) {
  18. next if $sudoshlogs =~ /^\.\.?$/; # Skip . and ..
  19. next if $sudoshlogs =~ /^.*?\-.*?\-input\-\d+$/;
  20. next if $sudoshlogs =~ /^.*?\-input\-\d+$/;
  21. if ($sudoshlogs =~ /^(.*?)\-(.*?)\-(script|time)\-(\d+)\-(\w+)$/)
  22. {
  23. my $user = $1;
  24. my $to = $2;
  25. my $type = $3;
  26. my $time = $4;
  27. my $rand = $5;
  28.  
  29. $h{$time}{to} = $to;
  30. $h{$time}{type} = $type;
  31. $h{$time}{user} = $user;
  32. $h{$time}{rand} = $rand;
  33. push(@$ref, $user, $to, $rand, $time);
  34. }
  35. }
  36. closedir(DIR);
  37. return;
  38. }
  39.  
  40. my @sudosh;
  41. listing(\@sudosh);
  42. #print $sudosh[0]."-";
  43. #print $sudosh[1]."-";
  44. #print $sudosh[2];
  45.  
  46. foreach my $output (@sudosh) {
  47. chomp $output;
  48. print $output."\n";
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement