Obtaining Example Files From This Book

[previous] [next] [table of contents] [index]

The example programs in this book are available electronically in a number of ways: over the Web (HTTP), by FTP, and ftpmail. (If you don't have an Internet or email connection, you can also use UUCP to get a copy of the original book files, without updates.) If you are directly on the Internet, use a Web browser or FTP. Use ftpmail if you are not on the Internet but can send and receive electronic mail to Internet sites. Use UUCP if none of the above works.

The files are in two formats: individual files and archive files. There are two archive file formats: gzipped tar and ZIPped file for DOS and Windows systems. All of the files are in the download directory; the README (or _read_me) file there explains the structure. Pages of this book that discuss a file also have a link to the individual file.

You can get all the files on the main server at the University of California, Irvine, and at all mirror sites too. Some sites have FTP access; all of them give you Web (HTTP) access. Here's a list of servers.

Some readers will have problems getting individual files with a Web browser. That's because some Web browsers expect filenames to end with "extensions" like .txt; those browsers can be confused by the filenames in these directories. If yours does that and you can't reconfigure it, use a command-line FTP client (see below).

If you're going to be getting a lot of the individual files, you might find it's more convenient (and takes less transfer time) to get one of the compressed archive files. This is a great choice if your browser complains about the "extensions" in the UNIX filenames.

The next sections explain how to use FTP, ftpmail and UUCP.


To use FTP, you need a machine with direct access to the Internet. All UNIX machines, and Windows 95 machines as well, have a command-line FTP client. Web browsers also support FTP if you give them a URL starting with ftp://, but they often have restrictions about the filenames they'll accept. Command-line FTP clients aren't nearly as picky as browsers can be. Here's a sample session to the UCI FTP server; if you use another server, substitute its hostname for ftp.ics.uci.edu. What you should type is shown in boldface.
% ftp ftp.ics.uci.edu
Connected to charlotte.ics.uci.edu.
220 charlotte.ics.uci.edu FTP server (Version 6.51 Wed Nov 13 17:02:13 PST 1996)

Name (charlotte.ics.uci.edu:jpeek): anonymous
331 Guest login ok, send style e-mail address as password.
Password: nicole@ora.com (use your user name and host here)
230 Guest login ok, access restrictions apply.
ftp> cd /pub/mh/book/download
250 CWD command successful.
ftp> cd /pub/mh/book/download
250-Please read the file README
250-  it was last modified on Sun Dec 22 09:43:34 1996 - 156 days ago
ftp> dir
    ...directory listing appears...
ftp> ascii                This is for transferring text files
200 Type set to A.
ftp> get README "|more"   This only works on UNIX hosts, I think
    ...README file appears, using the more pager program...
ftp> get README           This puts the file in your current directory
ftp> binary (Very important! You must use binary transfer for compressed files.)
200 Type set to I.
ftp> get mhex9705.tgz
200 PORT command successful.
150 Opening BINARY mode data connection for mhex9705.tgz
226 Transfer complete.
ftp> quit
221 Goodbye.
O'Reilly & Associates has an FTP server with book example files and other information; it has the original version of this book's files but doesn't have updates. The FTP archive, ftp://ftp.ora.com/published/oreilly/nutshell/MHxmh/, or ftp://ftp.ics.uci.edu/pub/mh/book/download/, has the complete archive file.


Ftpmail is a mail server available to anyone who can send and receive electronic mail to, and receive it from, Internet sites. This includes any company or service provider that allows email connections to the Internet. Here's how you do it.

You send mail to ftpmail@ftpmail.bryant.vix.com. (This is a public ftpmail server. It can be busy and not completely reliable.) In the message body, give the FTP commands you want to run. The server will run anonymous FTP for you and mail the files back to you. To get a complete help file, send a message with no subject and the single word help in the body. The following is a sample mail session that should get you the examples. This command sends you a listing of the files in the selected directory and the requested example files. The listing is useful in case there's a later version of the examples you're interested in.

% comp
To: ftpmail@ftpmail.bryant.vix.com
connect ftp.ics.uci.edu
chdir /pub/mh/book/download
uuencode              (or btoa if you have it)
get mhex9705.tgz   (or mhex9705.zip, or whatever)

What now? send
All retrieved files will be split into chunks and mailed to you. You remove the mail headers and concatenate the bodies into one file, and then uudecode (or atob) it. Once you've got the file, follow the directions in the README file to extract the files from the archive.


UUCP is standard on virtually all UNIX systems, and is available for IBM-compatible PCs and Apple Macintoshes. The examples from the original book (which is somewhat different from this updated editon) are available by UUCP via modem from UUNET. UUNET's connect-time charges apply.

You can get the examples from UUNET whether you have an account or not. If you or your company has an account with UUNET, you will have a system with a direct UUCP connection to UUNET. Find that system, and type:

uucp uunet\!~/published/oreilly/nutshell/MHxmh/MHxmh3.tar.Z yourhost\!~/yourname/
The backslashes can be omitted if you use the Bourne shell (sh) instead of csh. The file should appear some time later (up to a day or more) in the directory /usr/spool/uucppublic/yourname. If you don't have an account, contact UUNET at +1-703-204-8000.

It's a good idea to get the file /published/oreilly/nutshell/ls-lR.Z as a short test file containing the filenames and sizes of all the files in the directory.

Once you've got the desired file, follow the directions under FTP to extract the files from the archive.

[Table of Contents] [Index] [Previous: Appendix Introduction (Example Files and Programs)] [Next: FAQ]

Revised by Jerry Peek. Last change $Date: 1999/10/10 05:14:05 $

This file is from the third edition of the book MH & xmh: Email for Users & Programmers, ISBN 1-56592-093-7, by Jerry Peek. Copyright © 1991, 1992, 1995 by O'Reilly & Associates, Inc. This file is freely available; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation. For more information, see the file copying.htm.

Suggestions are welcome: Jerry Peek <jpeek@jpeek.com>