1
#!/usr/bin/perl
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
use strict;
22
use warnings;
23
24
unless (@ARGV) { print "usage: $0 <ip address> or $0 <hostname>\n" ; exit }
25
26
my $target = $ARGV[0];
27
chomp $target;
28
my $peeraddr;
29
30
if ($target =~ /\w/) {
31
my $ip = gethostbyname($target) or die "Can't resolve address: $!";
32
$peeraddr = inet_ntoa($ip);
33
} else {
34
$peeraddr = $target
35
}
36
37
use IO::Socket;
38
my $socket = IO::Socket::INET->new(
39
PeerAddr => $peeraddr,
40
PeerPort => "9100",
41
Proto => "tcp",
42
Type => SOCK_STREAM
43
) or die "Could not create socket: $! (Maybe the address you used is bad?)";
44
45
my $data = <<EOJ
46
\e%-12345X\@PJL JOB
47
\@PJL RDYMSG DISPLAY="Remember... These Come From Trees"
48
\@PJL EOJ
49
\e%-12345X
50
EOJ
51
;
52
53
print $socket $data;
54
print "\"Remember... These Come from Trees\" sent to $target";
55
if ($peeraddr ne $target) {print " ($peeraddr)";}
56
print "\n";