Almost there! There are a few things you should clean up in addition to figuring out how get() works.
use strict;
Lexically scope all of those variables with "my" to make strict happy.
"Hardcode" your desired local directory, and tell get() about it.
You don't need to add a newline to the cwd().
Your syntax for printing the filelist with newlines won't work. Use map instead.
Add some error checking and feedback.
#!/usr/local/bin/perl -w
use strict;
use Net::FTP;
my $hostname = 'mirror.anl.gov';
my $username = 'anonymous';
my $password = 'username@domain.com';
# Hardcode the directory and filename to get
my $home = '/pub';
my $filename = 'motd';
# Hardcode the local directory
my $localdir = '/home/boy/';
# Open the connection to the host
my $ftp = Net::FTP->new($hostname)
or die "Cannot connect to $hostname: $@"; # Construct object
$ftp->login($username, $password)
or die "Cannot login ", $ftp->message;; # Log in
$ftp->cwd($home)
or die "Cannot change working directory ", $ftp->message;# Change
+directory
my @filelist=$ftp->ls($home);
print map { "$_\n"} @filelist;
# Now get the file and leave
$ftp->get($filename,$localdir.$filename)
or die "Cannot get $filename: $@";
$ftp->quit;