#! /usr/bin/perl -w use strict ; my $WGET = '/usr/bin/wget' ; my $RSYNC = '/usr/bin/rsync' ; my $timeout = 300 ; my $tmp_dir = '/tmp/mirmon' ; my $prog = substr($0,rindex($0,'/')+1) ; my $Usage = < host.dom.com::module/file # handle ftp/http urls with wget if ( $url =~ m!^rsync://(.*)$! ) { my $src = $1 ; my $dst = $src ; $dst =~ s![/\s]!_!g ; my $TMP = "$tmp_dir/$dst" ; $src =~ s!/!::! ; unlink $TMP ; # ignore status my $cmd = "$RSYNC $opt_v $opt_q --no-motd --timeout $timeout $src $TMP" ; Warn sprintf "'%s'\n", $cmd if $opt{d} ; system $cmd ; if ( open TMP, $TMP ) { print ; close TMP ; } else { Warn "can't open $TMP" ; } } else { my $cmd = "$WGET -O - $opt_v $opt_q -t 1 -T $timeout $url |" ; Warn sprintf "'%s'\n", $cmd if $opt{d} ; if ( open CMD, $cmd ) { print ; close CMD ; } else { Warn "can't popen $cmd ($!)" ; } }