UUCP(P) POSIX Programmer's Manual UUCP(P)
uucp - system-to-system copy
uucp [-cCdfjmr][-n user] source-file... destination-file
The uucp utility shall copy files named by the source-file argument to the destination-file argument. The files named can be on local or
The uucp utility cannot guarantee support for all character encodings in all circumstances. For example, transmission data may be
restricted to 7 bits by the underlying network, 8-bit data and filenames need not be portable to non-internationalized systems, and so on.
Under these circumstances, it is recommended that only characters defined in the ISO/IEC 646:1991 standard International Reference Version
(equivalent to ASCII) 7-bit range of characters be used, and that only characters defined in the portable filename character set be used
for naming files. The protocol for transfer of files is unspecified by IEEE Std 1003.1-2001.
Typical implementations of this utility require a communications line configured to use the Base Definitions volume of
IEEE Std 1003.1-2001, Chapter 11, General Terminal Interface, but other communications means may be used. On systems where there are no
available communications means (either temporarily or permanently), this utility shall write an error message describing the problem and
exit with a non-zero exit status.
The uucp utility shall conform to the Base Definitions volume of IEEE Std 1003.1-2001, Section 12.2, Utility Syntax Guidelines.
The following options shall be supported:
-c Do not copy local file to the spool directory for transfer to the remote machine (default).
-C Force the copy of local files to the spool directory for transfer.
-d Make all necessary directories for the file copy (default).
-f Do not make intermediate directories for the file copy.
-j Write the job identification string to standard output. This job identification can be used by uustat to obtain the status or termi-
nate a job.
-m Send mail to the requester when the copy is completed.
Notify user on the remote system that a file was sent.
-r Do not start the file transfer; just queue the job.
The following operands shall be supported:
A pathname of a file to be copied to, or from, respectively. Either name can be a pathname on the local machine, or can have the
where system-name is taken from a list of system names that uucp knows about. The destination system-name can also be a list of names such
in which case, an attempt is made to send the file via the specified route to the destination. Care should be taken to ensure that interme-
diate nodes in the route are willing to forward information.
The shell pattern matching notation characters '?' , '*' , and "[...]" appearing in pathname shall be expanded on the appropriate system.
Pathnames can be one of:
1. An absolute pathname.
2. A pathname preceded by ~ user where user is a login name on the specified system and is replaced by that user's login directory.
Note that if an invalid login is specified, the default is to the public directory (called PUBDIR; the actual location of PUBDIR
3. A pathname preceded by ~/ destination where destination is appended to PUBDIR.
This destination is treated as a filename unless more than one file is being transferred by this request or the destination
is already a directory. To ensure that it is a directory, follow the destination with a '/' . For example, ~/dan/ as the des-
tination makes the directory PUBDIR/dan if it does not exist and puts the requested files in that directory.
4. Anything else shall be prefixed by the current directory.
If the result is an erroneous pathname for the remote system, the copy shall fail. If the destination-file is a directory, the last part of
the source-file name shall be used.
The read, write, and execute permissions given by uucp are implementation-defined.
The files to be copied are regular files.
The following environment variables shall affect the execution of uucp:
LANG Provide a default value for the internationalization variables that are unset or null. (See the Base Definitions volume of
IEEE Std 1003.1-2001, Section 8.2, Internationalization Variables for the precedence of internationalization variables used to
determine the values of locale categories.)
LC_ALL If set to a non-empty string value, override the values of all the other internationalization variables.
Determine the locale for the behavior of ranges, equivalence classes, and multi-character collating elements within bracketed file-
Determine the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to
multi-byte characters in arguments and input files) and the behavior of character classes within bracketed filename patterns (for
example, "'[[:lower:]]*'" ).
Determine the locale that should be used to affect the format and contents of diagnostic messages written to standard error, and
informative messages written to standard output.
Determine the location of message catalogs for the processing of LC_MESSAGES .
The standard error shall be used only for diagnostic messages.
The output files (which may be on other systems) are copies of the input files.
If -m is used, mail files are modified.
The following exit values shall be returned:
0 Successful completion.
>0 An error occurred.
CONSEQUENCES OF ERRORS
The following sections are informative.
The domain of remotely accessible files can (and for obvious security reasons usually should) be severely restricted.
Note that the '!' character in addresses has to be escaped when using csh as a command interpreter because of its history substitution syn-
tax. For ksh and sh the escape is not necessary, but may be used.
As noted above, shell metacharacters appearing in pathnames are expanded on the appropriate system. On an internationalized system, this is
done under the control of local settings of LC_COLLATE and LC_CTYPE . Thus, care should be taken when using bracketed filename patterns, as
collation and typing rules may vary from one system to another. Also be aware that certain types of expression (that is, equivalence
classes, character classes, and collating symbols) need not be supported on non-internationalized systems.
mailx , uuencode , uustat , uux
Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1, 2003 Edition, Standard for Information Technol-
ogy -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of
Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between this version and the original IEEE
and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained
online at http://www.opengroup.org/unix/online.html .
/The Open Group 2003 UUCP(P)