XTP(1)

NAME
xtp - file transfer program

SYNOPSIS
xtp [ -options ... ] <uniform resource locator>

DESCRIPTION

Xtp is a utility for retrieving, listing, or printing files from a remote network site, or sending files to a remote network site. xtp performs most of the same functions as the ftp(1) program, but does not require any interactive commands. You simply specify the file transfer task on the command line and xtp performs the task automatically.

EXAMPLES

To retrieve the file bird.jpg in directory images from host wizard.dupont.com, use:

     xtp ftp://wizard.dupont.com/images/bird.jpg

To retrieve all the files from directory images as user magick from host wizard.dupont.com, use:

     xtp -retrieve ftp://magick@wizard.dupont.com/images

You will be prompted for a password.

To retrieve all the files from directory images as user magick and password magick from host wizard.dupont.com, use:

     xtp -retrieve ftp://magick:magick@wizard.dupont.com/images

OPTIONS

-account password
    Supply a supplemental password required by a remote system for access to resources.

-binary
    retrieve files as binary. This is the default. Use +binary to retrieve files as text.

-directory
    list the names of files and their attributes that match the filename component of the uniform resource locator. The filename component is processed as a regular expression.

-exclude expression
    exclude files that match the regular expression. This option applies to the -directory, -print, or -retrieve options.

-file name
    store the file with this name. Refer to the -get and -put option for more details.

-get
    get files that match the filename component of the uniform resource locator. The filename component is expanded by passing it to csh(1). This option is equivalent to using the ftp get command. However, if the filename contains globbing characters this option is equivalent to the ftp mget command. Without globbing characters, you can store the file locally with a different name by using the -file option.

-port number
    If no port number is specified, xtp attempts to contact a FTP server at the default port. Otherwise, the specified port number is used.

-proxy hostname
    access the remote host via a proxy ftpd client running on this host. The default value of this option can be set with the environment variable xtp_proxy. See ENVIRONMENT for more details. Use +proxy to prevent proxy connections.

-print
    print files that match the filename component of the uniform resource locator. The filename component is processed as a regular expression.

-prune
    process files in the remote directory specified by the directory component of the uniform resource locator. Do not recursively search for files.

-put
    put files that match the filename component of the uniform resource locator. The filename component is expanded by passing it to csh(1). This option is equivalent to using the ftp put command. However, if the filename contains globbing characters this option is equivalent to the ftp mput command. Without globbing characters, you can store the file remotely with a different name by using the -file option.

-retrieve
    retrieve files that match the filename component of the uniform resource locator. The filename component is processed as a regular expression. Retrieved files are stored on your local host directory as the full name of the retrieved file. For example, if the retrieved file is named documents/xtp.man on the remote FTP server, it will appear in your remote directory as documents/xtp.man.

-timeout seconds
    specifies the maximum seconds to complete your remote FTP server request. If this time expires, the program terminates. The program also terminates if one tenth of this value is exceeded while logging onto the remote FTP server.

-type name
    identify the remote system type: UNIX, VMS, or other. The system type is determined automatically, however, you can override the system type with this option.

-verbose
    show all responses from the remote server.

If only the program name is specified on the command line, the program command syntax and options are listed.

If neither -directory, -print, -put, or -retrieve are specified on the command line, the file or files specified by the uniform resource locator is retrieved from the remote network host (as if -get was specified).

<uniform resource locator> has the format:

    protocol://host/[directory/[filename]]

where protocol is ftp and host is [user[:password]]@hostname. User defaults to anonymous and password defaults to host.domain. Note that directory/[filename] is interpreted relative to the home directory for user, thus an absolute pathname must be specified with the leading /:

    ftp://host//tmp/anyfile

As an extension, the filename part of the locator is expanded by the shell for options -get or -put, otherwise it is processed as a regular expression. For convenience, the protocol component of the uniform resource locator (ftp://) may be omitted.

Xtp retrieves files from the remote directory for -get and puts files in the remote directory for -put. Otherwise, xtp looks for a file of the form ls-lls-l([Rt])+([Rt])* and assumes it contains a recursive directory listing. If none is found, xtp recursively descends the directory hierarchy from the remote directory. Some remote hosts may have thousands of files causing a significant delay satisfying your request. This can be wasteful if the files you are interested in reside in a known directory. You can reduce the searching required by specifying <remote directory> on the command line. This limits the filename search to the specified directory and any of its subdirectories. Alternatively, -prune restricts the search to the remote directory only.

REGULAR EXPRESSIONS
A regular expression is zero or more branches, separated by |. It matches anything that matches one of the branches.

A branch is zero or more pieces, concatenated. It matches a match for the first, followed by a match for the second, etc.

A piece is an atom possibly followed by *, +, or ?. An atom followed by * matches a sequence of 0 or more matches of the atom. An atom followed by + matches a sequence of 1 or more matches of the atom. An atom followed by ? matches a match of the atom, or the null pattern.

An atom is a regular expression in parentheses (matching a match for the regular expression), a range (see below), . (matching any single character), ^ (matching the null pattern at the beginning of the input pattern), $ (matching the null pattern at the end of the input pattern), a ' followed by a single character (matching that character), or a single character with no other significance (matching that character).

A range is a sequence of characters enclosed in []. It normally matches any single character from the sequence. If the sequence begins with ^, it matches any single character not from the rest of the sequence. If two characters in the sequence are separated by -, this is shorthand for the full list of ASCII characters between them (e.g. [0-9] matches any decimal digit). To include a literal ] in the sequence, make it the first character (following a possible ^). To include a literal -, make it the first or last character.

ENVIRONMENT

xtp_proxy
    Specifies that the remote site should be contacted by proxy. See -proxy.

FILES

~/.netrc

SEE ALSO
ftp(1C), Mosaic(1)

COPYRIGHT
Copyright 1999 E. I. du Pont de Nemours and Company Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files ("ImageMagick"), to deal in ImageMagick without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of ImageMagick, and to permit persons to whom the ImageMagick is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of ImageMagick. The software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall E. I. du Pont de Nemours and Company be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with ImageMagick or the use or other dealings in ImageMagick. Except as contained in this notice, the name of the E. I. du Pont de Nemours and Company shall not be used in advertising or otherwise to promote the sale, use or other dealings in ImageMagick without prior written authorization from the E. I. du Pont de Nemours and Company.

ACKNOWLEDGEMENTS
Steve Singles, University of Delaware, for the initial implementation of this program.

Henry Spencer, University of Toronto, for the implementation of the regular expression interpreter and the text in REGULAR EXPRESSIONS.

AUTHOR
John Cristy, E.I. DuPont De Nemours and Company Incorporated