#!/usr/bin/perl use strict; use Net::FTP; my $BYTES_PER_HASH = 1024; # Fork a child process for Net::FTP # and capture its output one char at # a time if (open(FTP, "-|")) { # parent my $count = 1; while (getc(FTP)) { print $BYTES_PER_HASH * $count, " bytes received\n"; $count++; } print "Done\n"; } else { # child my $ftp = Net::FTP->new("ftp.microsoft.com", Debug => 0); $ftp->login("anonymous","-anonymous\@"); $ftp->cwd("MISC"); $ftp->hash(\*STDOUT, $BYTES_PER_HASH); $ftp->get("NBFCP.TXT"); $ftp->quit; }