История изменений
Исправление pru-mike, (текущая версия) :
#!/usr/bin/env perl
use strict;
use warnings;
use autodie;
use LWP::Simple qw/$ua get/;
our $URL_TO_GET = "http://ya.ru/";
our $IP_FILE = q/my_ip.txt/;
our $EXT_IP_HOST = q[https://myexternalip.com/raw];
$ua->ssl_opts( verify_hostname => 0 );
sub save_ip ($) {
my $new_ip = shift;
open my $fh, '>', $IP_FILE;
print $fh $new_ip;
}
my ($old_ip, $new_ip) = ("");
$new_ip = get "$EXT_IP_HOST" or die "Cannot gather ip from $EXT_IP_HOST\n";
if( -f $IP_FILE ){
open my $fh, '<', $IP_FILE;
$old_ip = <$fh>;
}else{
save_ip $new_ip;
}
if($new_ip eq $old_ip){
print STDERR "Nothing changed\n";
}else{
print STDERR "Save new ip $new_ip\n";
save_ip $new_ip;
get $URL_TO_GET;
}
Исходная версия pru-mike, :
#!/usr/bin/env perl
use strict;
use warnings;
use autodie;
use LWP::Simple qw/$ua get/;
our $URL_TO_GET = "http://ya.ru/";
our $IP_FILE = q/my_ip.txt/;
our $EXT_IP_HOST = q[https://myexternalip.com/raw];
$ua->ssl_opts( verify_hostname => 0 );
sub save_ip ($) {
my $new_ip = shift;
open my $fh, '>', $IP_FILE;
print $fh $new_ip;
}
my ($old_ip, $new_ip) = ("");
$new_ip = get "$EXT_IP_HOST" or die "Cannot gather ip from $EXT_IP_HOST\n";
if( -f $IP_FILE ){
open my $fh, '<', $IP_FILE;
$old_ip = <$fh>;
}else{
save_ip $new_ip;
}
if($new_ip eq $old_ip){
print STDERR "Nothing changed\n";
}else{
print STDERR "Save new ip $new_ip\n";
save_ip $new_ip;
print get $URL_TO_GET;
}