Thread wer hat lust auf ein Spiel? (61 answers)
Opened by conray at 2010-02-19 20:31

topeg
 2010-02-20 00:26
#133357 #133357
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#!/usr/bin/perl
use strict;
use warnings;

# History:
# conray  - 19.02.2010 : 19:31 UTC - initial version with ping (-p)
# betterworld - 19.02.2010 : 19:44 UTC - minor changes
# esskar  - 19.02.2010 : 20:27 UTC - changes on ping, and dump myself command (-dump)
# topeg  - 19.02.2010 : 00:02 UTC - addded mirror

use FindBin;
use Net::Ping;

#EierlegendeWollMilchSau.pl

my $cmd = lc shift @ARGV;
if ($cmd eq '-p' ) #ping
{
  my $ip = shift @ARGV
    or die "No ip.";

  my @r = split(/\./, $ip);
  my $till = shift(@ARGV) || $r[3];

  my $until = $till + 1;
  while ($r[3] < $until )
  {
    $ip = join '.', @r;
    my $ping = Net::Ping->new('icmp', 1, 64 );
    print "$ip " . ($ping->ping($ip) ? 'online' : 'offline') . "\n";
    $r[3]++;
  }
}
elsif($cmd eq '-dump')
{
  my $path = "$FindBin::Bin/$FindBin::Script";
  open(my $myself, "< $path") or die "Unable to open myself ($path): $!";
  while(<$myself>) { print $_; }
  close $myself;
}
elsif( $cmd eq '-devil' )
  {
     print "So long, and thanks for all the fish.\n";
     unlink $0 or die "Will not stop :'-(\n";
  }
elsif($cmd eq '-mirror')
{
  my $fh=\*STDIN;
  my $file=shift;
  open($fh,'<',$file) || die("ERROR open $file ($!)") if($file);
  chomp($_) && print reverse($_)."\n" while(<$fh>);
  close($fh);
}
# elsif(MORE) { }
else
{
  print "usage: EierlegendeWollMilchSau.pl <parameters>\n\n";
  print "parameters:\n";
  print "\t-p <ip> [range]\t\ttrys to ping an ip or an range of ip addresses.\n";
  print "\t-dump\t\t\tdumps itself to STDOUT\n";
  print "\t-devil\t\t\tDon't try that\n";
  print "\t-mirror [file]\t\t mirror file or STDIN\n";
  print "\n";
  exit 0;
}

__END__

View full thread wer hat lust auf ein Spiel?