UUCP(1C) Communication Commands UUCP(1C)


uucp, uulog, uuname - UNIX-to-UNIX system copy


uucp [-c | -C] [-d | -f] [-ggrade] [-jmr] [-nuser] [-sfile]
[-xdebug_level] source-file destination-file

uulog [-ssys] [-fsystem] [-x] [-number] system

uuname [-c | -l]


The uucp utility copies files named by the source-file arguments to the
destination-file argument.

The uulog utility queries a log file of uucp or uuxqt transactions in
file /var/uucp/.Log/uucico/system or /var/uucp/.Log/uuxqt/system.

The uuname utility lists the names of systems known to uucp.


The following options are supported by uucp:

Does not copy local file to the spool directory for
transfer to the remote machine (default).

Forces the copy of local files to the spool directory
for transfer.

Makes all necessary directories for the file copy

Does not make intermediate directories for the file

-g grade
grade can be either a single letter, number, or a
string of alphanumeric characters defining a service
grade. The uuglist command can determine whether it is
appropriate to use the single letter, number, or a
string of alphanumeric characters as a service grade.
The output from the uuglist command is a list of
service grades that are available, or a message that
says to use a single letter or number as a grade of

Prints the uucp job identification string on standard
output. This job identification can be used by uustat
to obtain the status of a uucp job or to terminate a
uucp job. The uucp job is valid as long as the job
remains queued on the local system.

Sends mail to the requester when the copy is complete.

-n user
Notifies user on the remote system that a file was

When multiple -n options are passed in, uucp only
retains the value specified for the last -n option.
This is the only user notified.

Does not start the file transfer, just queue the job.

-s file
Reports status of the transfer to file. This option is
accepted for compatibility, but it is ignored because
it is insecure.

-x debug_level
Produce debugging output on standard output.
debug_level is a number between 0 and 9. As debug_level
increases to 9, more detailed debugging information is
given. This option may not be available on all systems.

The following options cause uulog to print logging information:

-s sys
Prints information about file transfer work involving system

-f system
Executes a tail -f command of the file transfer log for
system. You must press BREAK to exit this function.

Other options used in conjunction with the above options are:

Looks in the uuxqt log file for the given system.

Executes a tail command of number lines.

The following options are supported by uuname:

Displays the names of systems known to cu. The two lists are the
same, unless your machine is using different Systems files for cu
and uucp. See the Sysfiles file.

Displays the local system name.


The source file name may be a path name on your machine, or may have the


where system-name is taken from a list of system names that uucp knows
about. source_file is restricted to no more than one system-name. The
destination system-name may also include a list of system names such as


In this case, an attempt is made to send the file, using the specified
route, to the destination. Care should be taken to ensure that
intermediate nodes in the route are willing to forward information. See
NOTES for restrictions.

For C-Shell users, the exclamation point (!) character must be surrounded
by single quotes ('), or preceded by a backslash (\).

The shell metacharacters ?, * and [...] appearing in pathname are
expanded on the appropriate system.

Pathnames may be one of the following:

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

3. A pathname preceded by ~/destination where destination is
appended to /var/spool/uucppublic. 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 the destination is a directory, follow it with a
forward slash (/). For example, ~/dan/ as the destination
creates the directory /var/spool/uucppublic/dan if it does not
exist and put the requested file(s) in that directory.

Anything else is prefixed by the current directory.

If the result is an erroneous path name for the remote system, the copy
fails. If the destination-file is a directory, the last part of the
source-file name is used.

Invoking uucp with shell wildcard characters as the remote source-file
invokes the uux(1C) command to execute the uucp command on the remote
machine. The remote uucp command spools the files on the remote machine.
After the first session terminates, if the remote machine is configured
to transfer the spooled files to the local machine, the remote machine
initiates a call and send the files; otherwise, the user must "call" the
remote machine to transfer the files from the spool directory to the
local machine. This call can be done manually using Uutry(8), or as a
side effect of another uux(1C) or uucp call.

Notice that the local machine must have permission to execute the uucp
command on the remote machine in order for the remote machine to send the
spooled files.

uucp removes execute permissions across the transmission and gives 0666
read and write permissions (see chmod(2)).


See environ(7) for descriptions of the following environment variables
that affect the execution of uucp: LANG, LC_ALL, LC_COLLATE, LC_CTYPE,


The following exit values are returned:

Successful completion.

An error occurred.


other data files

spool directories

other program files

public directory for receiving and sending


See attributes(7) for descriptions of the following attributes:

|Interface Stability | Standard |


mail(1), uuglist(1C), uustat(1C), uux(1C), chmod(2), attributes(7),
environ(7), standards(7), Uutry(8), uuxqt(8)


For security reasons, the domain of remotely accessible files may be
severely restricted. You probably are not able to access files by path
name. Ask a responsible person on the remote system to send them to you.
For the same reasons you are probably not able to send files to arbitrary
path names. As distributed, the remotely accessible files are those whose
names begin /var/spool/uucppublic (equivalent to ~/).

All files received by uucp are owned by uucp.

The -m option only works when sending files or receiving a single file.
Receiving multiple files specified by special shell characters ?, &, and
[...] does not activate the -m option.

The forwarding of files through other systems may not be compatible with
the previous version of uucp. If forwarding is used, all systems in the
route must have compatible versions of uucp.

Protected files and files that are in protected directories that are
owned by the requester can be sent by uucp. However, if the requester is
root, and the directory is not searchable by "other" or the file is not
readable by "other", the request fails.

Strings that are passed to remote systems may not be evaluated in the
same locale as the one in use by the process that invoked uucp on the
local system.

Configuration files must be treated as C (or POSIX) locale text files.

March 9, 2005 UUCP(1C)